.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)

相关推荐
Gopher_HBo3 分钟前
Go语言数据结构和算法(二十四)基数排序算法
后端
麻辣烫不加辣3 分钟前
跑批调额系统说明文档
java·后端
速易达网络8 分钟前
ASP.NET MVC 前后端商城系统介绍
后端·asp.net·mvc
inrgihc12 分钟前
Spring Boot 注册 Servlet 的五种方法
spring boot·后端·servlet
ldmd28416 分钟前
Go语言实战:入门篇-6:锁、测试、反射和低级编程
开发语言·后端·golang
武子康19 分钟前
大数据-178 Elasticsearch 7.3 Java 实战:索引与文档 CRUD 全流程示例
大数据·后端·elasticsearch
bing.shao20 分钟前
Golang中实现基于角色的访问控制(RBAC)
开发语言·后端·golang
why15121 分钟前
面经整理——Go
开发语言·后端·golang
毕设源码-朱学姐21 分钟前
【开题答辩全过程】以 基于Vue Springboot的图书共享系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
回家路上绕了弯25 分钟前
数据模型设计实战指南:从业务到落地的全流程方法论
分布式·后端