Files
juipnet/Services/Hncore.Pass.Vpn/Job/RefrushStatusJob.cs
wanyongkang d318014316 初始提交
2020-10-07 20:25:03 +08:00

42 lines
1.3 KiB
C#

using Hncore.Infrastructure.Common;
using Hncore.Pass.Vpn.Service;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Threading.Tasks;
namespace Hncore.Pass.Vpn.Job
{
/// <summary>
/// 超时支付的job
/// </summary>
public class RefrushStatusJob
{
public static void Start(IServiceProvider serviceProvider)
{
Task.Run(async () => { await Execute(serviceProvider); });
}
private static async Task Execute(IServiceProvider serviceProvider)
{
while (true)
{
LogHelper.Trace("刷新代理服务器状态");
try
{
using (var scope = serviceProvider.CreateScope())
{
var agentService = scope.ServiceProvider.GetService<AgentService>();
await agentService.RefrushAllStatus();
}
}
catch (Exception e)
{
LogHelper.Error("刷新代理服务器状态失败", e);
}
await Task.Delay(30 * 1000);
}
}
}
}