gpt4 book ai didi

c# - 关于 C# 中 Thread.Sleep() 2 小时的问题

转载 作者:行者123 更新时间:2023-11-30 20:18:01 24 4
gpt4 key购买 nike

我正在开发 .net Windows 应用程序。

我正在使用 System.Threading.Thread。

在使用五 (5) 个线程的单一形式中。我有一个代码,它在运行时按顺序执行一系列行。我想在两者之间添加一个暂停。

为此我正在使用

Thread.Sleep(10800000)

3 小时

但是我在执行

行之后在 Debug模式下进行了检查
Thread.Sleep(10800000)

即使等待 4 小时,我的调试也没有转到下一行,或者下一行永远不会执行。

我在其他线程而不是主线程中使用这个 Thread.Delay。此延迟需要,因为我发送了一个命令来配置硬件设置,该设置至少需要 3 小时 才能完成。

这就是我使用它的原因

Thread.Delay(10800000)

意味着我的后续代码只有在等待 3 小时后才能继续。

谁能帮帮我?

最佳答案

Thread.Sleep 不是为长时间 sleep 而设计的。您应该考虑使用类似 System.Threading.Timer 的东西.

Provides a mechanism for executing a method on a thread pool thread at specified intervals.

您可以将其首次运行时间设置为午夜,然后让它每 24 小时关闭一次。 Timer(TimerCallback, Object, TimeSpan, TimeSpan) 构造函数正是您要找的。

关于c# - 关于 C# 中 Thread.Sleep() 2 小时的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42690975/

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