如何添加延迟2或3秒
您可以使用Thread.Sleep()
函数,例如,
int milliseconds = 2000;
Thread.Sleep(milliseconds);
用于停止当前线程的2秒钟的执行。
无论如何,这不能满足您的需求......您究竟想要完成什么?
避免使用Thead.Sleep原因它将完全阻止当前线程执行任何操作直到持续时间结束。 – 2011-03-27 14:59:51
@穆罕默德:是的,当然它会完全阻止。但有时它可能是有用的......它真的取决于OP需要什么...... – digEmAll 2011-03-27 15:07:17
由于我不能发表一个新的答案,我想评论 - 如果你不希望它阻止程序,你可以使用'await Task.Delay(毫秒)'。这对我有用:) – SaiyanGirl 2015-08-01 20:25:31
使用间隔设置为2-3秒的计时器。
你有三个不同的选项可供选择,这取决于应用程序的类型你写的:
不要使用Thread.Sleep
,因为这将完全锁定线程并阻止它处理其他消息。假设一个单线程应用程序(大多数应用程序),您的整个应用程序将停止响应,而不是按照您的预期暂停。
如果它是一个控制台应用程序,'Thread.Sleep'警告可能不那么重要。 – 2011-03-27 14:54:42
有一个第四个计时器:[System.Web.UI.Timer](https://msdn.microsoft.com/en-us/library/system.web.ui.timer.aspx),一个ASP.NET组件定期执行异步或同步网页回发。 – David 2016-09-28 13:49:32
System.Threading.Thread.Sleep(
(int)System.TimeSpan.FromSeconds(3).TotalMilliseconds);
或用using
声明:
Thread.Sleep((int)TimeSpan.FromSeconds(2).TotalMilliseconds);
我喜欢这1000 * numSeconds
(或简称3000
),因为它使得它更明显的是怎么回事的人谁之前没有使用Thread.Sleep
。它更好地记录你的意图。
有这样做的几种方法,但*为什么*您需要添加一个延迟?如果我们知道,那么我们就能够提出最合适的方式来实现它。 – ChrisF 2011-03-27 14:47:23
这个问题是无可救药的不足之处,建议Thread.Sleep()。 – 2011-03-27 14:47:40
只是澄清,我投票结束这个问题,因为你没有提供足够的细节给任何人提供一个好的,高质量的答案。我非常愿意重新开放它作为一个有效的问题,如果你添加一些更多的细节,你到底想做什么。尽早结束投票是防止质量差的问题大量“噪音”答案的一种方法。一旦你添加了更多的细节,留下我的评论和/或标记一个国防部重新打开它。 – 2011-03-27 16:02:29