using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Options;
namespace WIDESEAWCS_Tasks.SocketServer
{
///
/// Socket·þÎñ¶ËÍйܷþÎñ
///
public class SocketServerHostedService : IHostedService
{
private readonly TcpSocketServer _server;
private readonly SocketServerOptions _options;
public SocketServerHostedService(TcpSocketServer server, IOptions options)
{
_server = server;
_options = options.Value;
}
public Task StartAsync(CancellationToken cancellationToken)
{
if (!_options.Enabled)
{
return Task.CompletedTask;
}
return _server.StartAsync(cancellationToken);
}
public Task StopAsync(CancellationToken cancellationToken)
{
return _server.StopAsync(cancellationToken);
}
}
}