zoukankan      html  css  js  c++  java
  • 指定时间(一小段时间内)执行功能

    概述

      有些时候,我们会希望到某个时间了再执行某个功能,比如晚上12点的时候,以下代码就可以粗略的实现该功能(之所以说粗略,是因为当前代码并没有把时间的限制精确到那么准)

      当然,如果你希望时间再准一些,我觉得可以在现有代码上再多几层嵌套,从外到内每一层对时间的筛选细度和线程休眠时间可以越来越小,这样,while里面的代码并不会执行特别多的次数,但对时间的控制又可以更加精确。(恩,应该是这样的!)

    代码

                //DateTime day = new DateTime(2018, 12, 15);
                DateTime day = new DateTime(2018, 12, 12, 16, 42, 0);
    
                Console.WriteLine($"while前  时间:{DateTime.Now.ToString()}");
                while (true)
                {
                    DateTime now = DateTime.Now;
    
                    if (now.AddSeconds(-15) < day && now >= day)
                    {
                        break;
                    }
                    else
                    {
                        System.Threading.Thread.Sleep(5000);        //如果还没到时间,5秒后再来一次
                    }
                }
                Console.WriteLine($"while后  时间:{DateTime.Now.ToString()}");

       又想了一下,其实可以直接两个时间相减,然后根据时间差来决定休眠多久(不知道把休眠时间设置得特别长会怎样,如果这样不好的话可以根据时间差与小时、分钟的大小来设置休眠时间)

  • 相关阅读:
    平衡的括号(栈)
    二叉树遍历
    Ohana Cleans Up0101
    Missing number
    Django框架之模板层
    Django框架之路由层、视图层
    Django框架
    Django初识
    前端之bootstrap
    前端之BOM、DOM
  • 原文地址:https://www.cnblogs.com/zhangchaoran/p/10109295.html
Copyright © 2011-2022 走看看