你好,
在我的应用程序开发过程中,我使用 Thread.Sleep 让我们的外部设备有一些时间在进行查询之前调整设置,因为它们很旧而且很慢。
我现在想用更时尚、更正确的东西替换它们。
有没有人有一种简单的方法来“等待”设备而不是休眠,请记住设备不会让我们知道它何时准备就绪,所以等待与我们所能做的一样好!??
问候,乔治。
最佳答案
使用定时器定期唤醒并查看设备是否准备就绪可能更合适。
这里至少有两个选项 System.Timers.Timer
或 System.Threading.Timer
。
但是,这可能意味着您必须更多地参与多线程,以便计时器可以通知程序的其余部分在设备准备就绪时继续(例如,使用 WaitHandle
或某种类型,例如 AutoResetEvent
)。
恕我直言,使用 Thread.Sleep
阻塞单个同步线程本质上没有任何错误。
关于c# - 寻找 Thread.Sleep 的简单替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2847735/