using Masuit.Tools;
|
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Logging;
|
using System.Net.Sockets;
|
using System.Net;
|
using System.Text;
|
using WIDESEA_Cache;
|
using WIDESEA_Core.Const;
|
using WIDESEA_DTO.WMS;
|
using WIDESEA_IServices;
|
using WIDESEAWCS_BasicInfoRepository;
|
using OfficeOpenXml.FormulaParsing.Excel.Functions.Numeric;
|
using WIDESEA_StorageSocketServices;
|
using WIDESEA_IStorageSocketServices;
|
using Microsoft.Extensions.Configuration;
|
|
namespace WIDESEA_StorageTaskServices
|
{
|
public class MyBackgroundService : IHostedService, IDisposable
|
{
|
private readonly ILogger<MyBackgroundService> _logger;
|
Connection connection = AppSettings.Configuration.GetSection("Connection").Get<Connection>();
|
public SocketClientService _socket { get; set; }
|
|
private Timer _timer;
|
|
public MyBackgroundService(ILogger<MyBackgroundService> logger, SocketClientService socketClientService)
|
{
|
_logger = logger;
|
_socket = socketClientService;
|
}
|
|
public Task StartAsync(CancellationToken cancellationToken = default)
|
{
|
//TimeSpan.FromMinutes(5)
|
_timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromMinutes(30));
|
|
return Task.CompletedTask;
|
}
|
|
|
private void DoWork(object state)
|
{
|
_socket.ConnectServer(connection.IP, connection.Port);
|
}
|
|
public Task StopAsync(CancellationToken cancellationToken)
|
{
|
_logger.LogInformation("MyBackgroundService is stopping.");
|
_timer?.Change(Timeout.Infinite, 0);
|
return Task.CompletedTask;
|
}
|
|
public void Dispose()
|
{
|
_timer?.Dispose();
|
}
|
}
|
}
|