后台任务
1.创建webapi项目
2.在项目中新建BackTask 文件夹
3.在BackTask文件夹下创建 TestBackService 类
4.TestBackService 类 继承一下后台任务类:BackgroundService
至此,后台任务类就搭建完成了,然后就可以开始进行代码操作了。
我们来一个非常之简单的后台任务测试:
在类中重写 一下 ExecuteAsync()方法
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { Console.WriteLine("----------后台任务开启-------------------"); while (!stoppingToken.IsCancellationRequested) { try { //模拟实际业务,输出当前时间 Console.WriteLine($"当前时间为:{DateTime.Now}"); Thread.Sleep(1500); //测试报错 //int.Parse("fdgdfg"); } catch (Exception ex) { Console.WriteLine($"出错了:{ex.Message}"); //根据实际情况决定是否停止后台任务 await base.StopAsync(stoppingToken); } } }
在startup类中注册相关类
public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddHostedService<TestBackService>();//这是后台任务的注册方式 services.AddSingleton<MyDbContext>(); }
posted on 2022-07-28 10:44 泰坦尼克号上的活龙虾 阅读(59) 评论(0) 收藏 举报