asp python 定时任务_asp.net core 简单定时任务

基于后台服务类 BackgroundService 实现,类所在程序集为Microsoft.Extensions.Hosting

1.实现BackgroundService方法ExecuteAsync

using Microsoft.Extensions.Hosting;

using Microsoft.Extensions.Logging;

using System;

using System.Threading;

using System.Threading.Tasks;

namespace NetCoreMVC.Cfg

{

///

/// 简单的定时任务执行

///

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() + "BackgroundService:启动");

while (!stoppingToken.IsCancellationRequested)

{

await Task.Delay(5000, stoppingToken); //启动后5秒执行一次 (用于测试)

_logger.LogInformation(DateTime.Now.ToString()+" 执行逻辑");

}

_logger.LogInformation(DateTime.Now.ToString() + "BackgroundService:停止");

}

catch (Exception ex)

{

if (!stoppingToken.IsCancellationRequested)

{

_logger.LogInformation(DateTime.Now.ToString() + "BackgroundService:异常" + ex.Message + ex.StackTrace);

}

else

{

_logger.LogInformation(DateTime.Now.ToString() + "BackgroundService:停止");

}

}

}

}

}

2.注册服务

public void ConfigureServices(IServiceCollection services)

{

//注册简单的定时任务执行

services.AddSingleton();

//注册mvc服务

services.AddMvc();

3.测试结果

c2e05dd457b433672febdfa23d344910.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值