我有一个方法应该延迟运行一段指定的时间。 我应该使用 Thread thread = new Thread(() => { Thread.Sleep(millisecond); action(); }); thread.IsBackground = true; thread.Start(); 要么 Timer timer = new Timer(o => action(), null, millisecond, -1); 我读过一些关于使用Thread.Sleep的文章是糟糕的devise。 但我不明白为什么。 但是对于使用Timer,Timer的configuration方法。 由于执行延迟,我不知道如何configurationTimer。 你有什么build议吗? 或者,如果您有延迟执行的替代代码也很感激。 谢谢,
我知道POSIX sleep(x)函数使程序在x秒内睡眠。 有没有一个函数使程序在C ++中hibernatex 毫秒 ?
在Windows上,我有一个我从来没有遇到过的问题。 这就是如何让一个线程睡眠不到一毫秒。 在Unix上,通常有多种select(睡眠,睡眠和纳睡)以适应您的需求。 然而,在Windows上,只有毫秒粒度的睡眠 。 在Unix上,我可以使用select系统调用创build一个微秒级的睡眠,这非常简单: int usleep(long usec) { struct timeval tv; tv.tv_sec = usec/1000000L; tv.tv_usec = usec%1000000L; return select(0, 0, 0, 0, &tv); } 我怎样才能在Windows上实现相同的?
Windows的剪切工具可以捕捉屏幕,但有时我想要在5秒后捕捉屏幕,例如摄像头显示的图像。 (例如,运行脚本并对相机微笑)。 所以在Ruby中,我可以做类似的事情 sleep 3 system('c:/windows/system32/SnippingTool.exe') 但不是所有的计算机都有Ruby,那么如何在.bat文件中做到这一点? (这是可以在大多数PC上使用剪切工具运行的东西)。 问题是在.bat文件中没有“睡眠”可用。
我可以给它浮点数,比如 time.sleep(0.5) 但是它有多准确呢? 如果我给它 time.sleep(0.05) 它真的会睡大约50毫秒?
在执行另一个操作之前,有没有一种方法可以在JavaScript中进行睡眠? 例: var a = 1+3; // Sleep 3 seconds before the next action here var b = a + 4;
线程中的wait()和sleep()有什么区别? 我的理解是一个wait()线程仍处于运行模式,并使用CPU周期,但sleep()不消耗任何CPU周期正确? 为什么我们有wait()和sleep() :它们的实现在较低的层次上是如何变化的?
我想在while循环中添加一个延迟/睡眠: 我试过这样的: alert('hi'); for(var start = 1; start < 10; start++) { setTimeout(function () { alert('hello'); }, 3000); } 只有第一种情况是正确的:在显示alert('hi') ,它将等待3秒,然后alert('hello')将会显示,但是alert('hello')将会不断地重复。 我希望在alert('hi')后3秒钟显示alert('hello')之后,第二次alert('hello')需要等待3秒钟,等等。 任何人都可以请指教?
有没有更好的方法来devise一个sleep JavaScript比下面的pausecomp函数( 从这里取得 )? function pausecomp(millis) { var date = new Date(); var curDate = null; do { curDate = new Date(); } while(curDate-date < millis); } 这不是JavaScript中睡眠的重复- 动作之间的延迟 ; 我希望在一个函数中间有一个真正的睡眠 ,而不是在一段代码执行之前的延迟。
我经常看到它提到了Thread.Sleep(); 不应该使用,但我不明白为什么这样。 如果Thread.Sleep(); 会造成麻烦,有没有其他的解决方案可以保证安全? 例如。 while(true) { doSomework(); i++; Thread.Sleep(5000); } 另一个是: while (true) { string[] images = Directory.GetFiles(@"C:\Dir", "*.png"); foreach (string image in images) { this.Invoke(() => this.Enabled = true); pictureBox1.Image = new Bitmap(image); Thread.Sleep(1000); } }