zoukankan      html  css  js  c++  java
  • C#Timer

     protected virtual async Task ScheduleJob(CancellationToken cancellationToken)
            {
                var next = _expression.GetNextOccurrence(DateTimeOffset.Now, _timeZoneInfo);
                if (next.HasValue)
                {
                    var delay = next.Value - DateTimeOffset.Now;
                    _timer = new System.Timers.Timer(delay.TotalMilliseconds);
                    _timer.Elapsed += async (sender, args) =>
                    {
                        _timer.Dispose();  // reset and dispose timer
                        _timer = null;
    
                        if (!cancellationToken.IsCancellationRequested)
                        {
                            await DoWork(cancellationToken);
                        }
    
                        if (!cancellationToken.IsCancellationRequested)
                        {
                            await ScheduleJob(cancellationToken);    // reschedule next
                        }
                    };
    
                    System.Threading.Timer timer = new Timer(new TimerCallback(async (obj) =>
                  {
                      _timer.Dispose();  // reset and dispose timer
                        _timer = null;
    
                      if (!cancellationToken.IsCancellationRequested)
                      {
                          await DoWork(cancellationToken);
                      }
    
                      if (!cancellationToken.IsCancellationRequested)
                      {
                          await ScheduleJob(cancellationToken);    // reschedule next
                        }
                  }), null, 0, System.Threading.Timeout.Infinite);
                    _timer.Start();
                }
                await Task.CompletedTask;
            }
    

      

  • 相关阅读:
    js--获得当前系统时间
    关于react记录
    循环运用记录
    react native环境的搭建
    video,audio的使用细则
    mongoDB 将mongodb添加到服务
    react 全选和全不选
    人生那么多不确定,你怕什么
    select样式的重写
    关于动态插入出现undefined
  • 原文地址:https://www.cnblogs.com/francisXu/p/13092810.html
Copyright © 2011-2022 走看看