为以下问题(C#)寻找一个好的设计。提前感谢您的回复!
- 多线程程序
- 至少两个线程
- 第一个线程一直在运行
- 第二个线程需要从每个工作日的上午 9 点到下午 5 点运行,否则暂停
到目前为止我尝试过的想法和事情:
保持双线程。对于需要在特定时间执行/暂停的操作,请使用 Thread.Sleep。问题:Thread.Sleep 似乎根本没有暂停线程。线程继续执行,就好像 Thread.Sleep 不存在一样。还没弄清楚为什么(欢迎评论)。如果使用循环代替 Thread.Sleep,如果循环时间过长(例如一整夜),线程将不会唤醒。
添加带有计时器的第三个线程。这第三个线程唤起了第二个线程的执行/暂停。
更好的想法???