
Not to say the issue shouldn't be tracked down, but shouldn't a more
portable function be used anyway?
untested example:
maxBoundMicroSecInSec =(maxBound `div` 10^6)
threadDelaySec :: Int -> IO ()
threadDelaySec s
| s > maxBoundMicroSecInSec = threadDelay (maxBoundMicroSecInSec *
10^6) >> threadDelaySec (s - maxBoundMicroSecInSec)
| otherwise = threadDelay (s * 10^6)
On Tue, Feb 10, 2009 at 5:57 PM, Corey O'Connor
The POSIX sleep function is defined as: sleep() makes the current process sleep until seconds seconds have elapsed or a signal arrives which is not ignored.
Sounds like a signal is arriving that is interrupting the sleep.
-Corey O'Connor
2009/2/9 John Ky
: Hi Peter,
Source code: import System.IO import System.Posix
main = do putStrLn "Waiting for 5 seconds." sleep 5 -- doesn't sleep at all putStrLn "Done."
OS: Mac OS X 10.5
Compile command: ghc --threaded testsleep.hs
If I remove --threaded, then it does sleep.
Thanks,
-John
On Tue, Feb 10, 2009 at 8:59 AM, Peter Verswyvelen
wrote: Hi John, Which sleep are you using? From which module? Can you show the full source with import statements? Cheers, Peter 2009/2/9 John Ky
Hi Haskell Cafe,
I wrote very short program to sleep for 5 seconds compiled with the -threaded option in ghc on the Mac OS X 1.5.
I am finding that using the sleep function doesn't sleep at all, whereas using threadDelay does:
main = do putStrLn "Waiting for 5 seconds." threadDelay 5000000 -- works putStrLn "Done."
main = do putStrLn "Waiting for 5 seconds." sleep 5 -- doesn't sleep at all putStrLn "Done."
Anybody know what's happening?
Thanks
-John
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe