这真的应该不难找到答案,但可惜我没有......我想延迟 do
中的下一个执行步骤堵塞。我找到了功能delay
,sleep
,nanosleep
和usleep
.
还有这个问题,它不包括如何使用这些,但是:Sleep in Haskell .
对于所有这些,我都遇到了同样的错误,所以我可能从根本上做错了什么:
Variable not in scope: delay :: Integer -> IO a0
这是我的测试片段:
main = do
{
putStrLn "line 1"
; delay 2
; putStrLn "line 2"
}
由于某种原因,谷歌搜索错误实际上并没有产生任何有用的东西。
最佳答案
好吧,你必须导入 Control.Concurrent
第一的:
import Control.Concurrent
threadDelay 1000000 --sleep for a million microseconds, or one second
关于haskell - 如何在 Haskell 中休眠或延迟线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47816174/