.NET 定时任务

注册服务

builder.Services.AddHostedService<TestHostedService2>();

创建服务

TestHostedService.cs

arduino 复制代码
namespace 定时任务
{
    public class TestHostedService : IHostedService, IDisposable
    {
        private Timer? _timer;

        public Task StartAsync(CancellationToken cancellationToken)
        {
            _timer = new Timer(DoWork, null, TimeSpan.FromSeconds(5), TimeSpan.FromSeconds(5));

            return Task.CompletedTask;
        }

        private void DoWork(object? state)
        {
            Console.WriteLine("这是任务a");
            Console.WriteLine($"{DateTime.Now:yyyy-MM-dd HH:mm:ss}");
        }

        public Task StopAsync(CancellationToken cancellationToken)
        {
            Console.WriteLine("StopAsync");

            return Task.CompletedTask;
        }


        public void Dispose()
        {
            _timer?.Dispose();
        }
    }
}

测试

创建了两个定时任务服务,b每五秒执行一次,a五秒后才执行

参考

.NET Core 实现后台任务(定时任务)IHostedService(一) - 一事冇诚 - 博客园 (cnblogs.com)

相关推荐
武子康几秒前
大数据-33 HBase 整体架构 HMaster HRegion
大数据·后端·hbase
前端付豪2 分钟前
19、用 Python + OpenAI 构建一个命令行 AI 问答助手
后端·python
凌览2 分钟前
斩获 27k Star,一款开源的网站统计工具
前端·javascript·后端
全栈凯哥5 分钟前
02.SpringBoot常用Utils工具类详解
java·spring boot·后端
狂师31 分钟前
啥是AI Agent!2025年值得推荐入坑AI Agent的五大工具框架!(新手科普篇)
人工智能·后端·程序员
星辰大海的精灵33 分钟前
使用Docker和Kubernetes部署机器学习模型
人工智能·后端·架构
MikeWe35 分钟前
C++宏的解析:从基础语法到实战场景
后端
向往技术的猫菜41 分钟前
Java必需要会的MySQL知识
后端
Frank_zhou43 分钟前
Java代码是如何运行起来的
后端
Victor35643 分钟前
MySQL(121)如何处理死锁问题?
后端