如何在do-block中使用sleep和delay函数?

时间:2017-12-14 14:50:06

标签: haskell compiler-errors delay sleep

这真的不容易找到答案,但唉,我不想......我想延迟do块中的下一个执行步骤。我找到了这些功能 delaysleepnanosleepusleep

而且这个问题并没有涵盖如何使用其中任何一个,但是:Sleep in Haskell

我对所有这些都得到同样的错误,所以我可能从根本上做错了什么:

  

Variable not in scope: delay :: Integer -> IO a0

这是我的测试代码段:

main = do
  {
    putStrLn "line 1"
  ; delay 2
  ; putStrLn "line 2"
  }

谷歌搜索错误实际上并没有因某种原因产生任何有用的东西。

1 个答案:

答案 0 :(得分:3)

嗯,你必须先导入Control.Concurrent

import Control.Concurrent

threadDelay 1000000 --sleep for a million microseconds, or one second