前言此文并不是说要完全放弃使用Thread.Sleep,而是要说明在符合哪些情况下使用!场景很多时候,我们会需要一个定时服务来处理业务。但并不是死死的每隔N分钟执行一次那种,而是在一次处理完后,算好下一次处理的时间点。当到达此时间点,触发程序重新开始执行代码。 普遍做法 普 ...
前言
此文并不是说要完全放弃使用Thread.Sleep,而是要说明在符合哪些情况下使用!
场景
很多时候,我们会需要一个定时服务来处理业务。
但并不是死死的每隔N分钟执行一次那种,而是在一次处理完后,算好下一次处理的时间点。
当到达此时间点,触发程序重新开始执行代码。
普遍做法
普遍的情况下,都是使用while(true){Thread.Sleep()}来实现,废话不多话,看代码版本1:
class Program { static void Main(get='_blank'>string[] args) { var workLists = new List<string>() { "任务1", "任务2", "任务3", "任务4" }; foreach (var task in workLists) { var thread = new System.Threading.Thread(new System.Threading.ParameterizedThreadStart(Work.DoWork)); thread.Start(task); } } }
原标题:为什么要放弃使用Thread.Sleep
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。