.net core 定时器
标签:ace services protect color div prot net 停止 简单
这次要说的是在.net core 中如何做一个定时器,让后台定时执行某一段程序。其实很简单,不说了直接上代码:
定时程序执行的类:
public class TimedExecutService : BackgroundService
{
public ILogger _logger;public TimedExecutService(ILogger logger)
{
this._logger = logger;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
try
{
_logger.LogInformation(DateTime.Now.ToString() + "启动自动排障定时任务!");
while (!stoppingToken.IsCancellationRequested)
{
await Task.Delay(5000, stoppingToken); //启动后五秒执行一次
_logger.LogInformation(DateTime.Now.ToString() + " 执行自动排障任务!");
}
_logger.LogInformation(DateTime.Now.ToString() + "自动排障任务停止!");
}
catch (Exception ex)
{
if (!stoppingToken.IsCancellationRequested)
{
_logger.LogInformation(DateTime.Now.ToString() + "自动排障任务异常!" + ex.Message + ex.StackTrace);
}
else
{
_logger.LogInformation(DateTime.Now.ToString() + "自动排障任务异常停止!");
}
}
}
}
下面是在startup中的ConfigureServices注册:
//注册简单的定时任务执行
services.AddSingleton();
简单的定时任务完成。
.net core 定时器
标签:ace services protect color div prot net 停止 简单
原文地址:https://www.cnblogs.com/zpy1993-09/p/13232226.html
评论