gpt4 book ai didi

C# 定时器或 Thread.Sleep

转载 作者:IT王子 更新时间:2023-10-29 03:53:02 29 4
gpt4 key购买 nike

我正在运行 Windows 服务并使用循环和 Thread.Sleep 重复任务,使用计时器方法会更好吗?

如果是,一个代码示例会很棒

我目前正在使用这段代码来重复

int curMinute;
int lastMinute = DateTime.Now.AddMinutes(-1).Minute;

while (condition)
{
curMinute = DateTime.Now.Minute;

if (lastMinute < curMinute) {
// do your once-per-minute code here
lastMinute = curMinute;
}

Thread.Sleep(50000); // sleeps for 50 seconds

if (error condition that would break you out of this) {
break; // leaves looping structure
}
}

最佳答案

IMO,计时器是个更好的主意。这样,如果您的服务被要求停止,它可以非常快速地做出响应,并且不会再次调用计时器滴答处理程序......如果您正在 sleep ,服务经理将不得不等待 50 秒或杀死您的线程,两者都不是非常好。

关于C# 定时器或 Thread.Sleep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1091710/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com