using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Options;
|
|
namespace WIDESEAWCS_Tasks.SocketServer
|
{
|
/// <summary>
|
/// Socket·þÎñ¶ËÍйܷþÎñ
|
/// </summary>
|
public class SocketServerHostedService : IHostedService
|
{
|
private readonly TcpSocketServer _server;
|
private readonly SocketServerOptions _options;
|
|
public SocketServerHostedService(TcpSocketServer server, IOptions<SocketServerOptions> 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);
|
}
|
}
|
}
|