【发布时间】:2012-02-02 19:10:36
【问题描述】:
我有一个代码,它在运行时会按顺序执行一系列行。 我想在两者之间添加一个暂停。
目前,我有这样的
//do work
Thread.Sleep(10800000);
//do work
然而,这会冻结软件,我认为这是因为睡眠时间太长了。 我在网上搜索,发现了另一个名为 Timer 的解决方法。 有人可以给我看一个与 Thread.sleep 一样工作的 Timer 示例代码吗?
提前谢谢你。
编辑:我需要软件等待 3 小时,然后才能继续执行其余的代码。这个软件是用来和机器通信的,我不能让剩下的代码在等待 3 个小时的时候执行。
【问题讨论】:
-
所以...使用更短的睡眠时间? 10 800 000 毫秒是三个小时。定时器和睡眠有不同的用途,你不能真的用另一个代替。
-
呃,你为什么要10800秒的睡眠时间?
-
澄清一下,你真的要睡
10800000毫秒(3 小时)吗? -
如果你在 gui 线程中使用 sleep...它将冻结所有用户输入。不要那样做。
-
“冻结软件”,如果你休眠一个不同于主线程的线程,它不应该冻结。睡三个小时是很长的时间。你到底想做什么?为什么要让线程休眠 3 小时?
标签: c# .net multithreading threadpool