zoukankan      html  css  js  c++  java
  • .net core 定时器

     这次要说的是在.net core 中如何做一个定时器,让后台定时执行某一段程序。其实很简单,不说了直接上代码:

     定时程序执行的类:

     public class TimedExecutService : BackgroundService
        {
            public ILogger<TimedExecutService>  _logger;public TimedExecutService(ILogger<TimedExecutService> 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<Microsoft.Extensions.Hosting.IHostedService, TimedExecutService>();

    简单的定时任务完成。

  • 相关阅读:
    自定义input file样式
    input text 不显示输入的历史记录
    白话 P-value
    R博客
    安装NXNET
    形象的解释神经网络激活函数的作用是什么?
    嵌入式选择与L1正则化
    “梯度下降法”理解
    控制台乱码
    R语言快捷键
  • 原文地址:https://www.cnblogs.com/zpy1993-09/p/13232226.html
Copyright © 2011-2022 走看看