.net6定时器
因业务涉及到定时执行任务 所以要使用到定时器
直接写在program里 (如果发布到iis服务器上面的话 一定要将iis部署绑定的应用程序池->高级设置->闲置时间设置为0)
//须要先注入调用的service
// 添加服务到容器中
builder.Services.AddScoped<BaseAutoService>();
...
//回调方法
void TimerCallback(object state)
{
// 获取服务实例并调用它的方法
using (var scope = app.Services.CreateScope())
{
var services = scope.ServiceProvider;
var myService = services.GetRequiredService<BaseAutoService>();
//调用执行方法
myService.StartAsync(CancellationToken.None);
}
}
// 创建定时器对象 设置执行时间是2秒中
Timer timer = new Timer(TimerCallback, null, TimeSpan.Zero, TimeSpan.FromSeconds(2));

浙公网安备 33010602011771号