以下のコードでtimeout関数の動作確認をしたのですが、
うまく動作しません。何がいけないのでしょうか?

import System.Timeout

main = do a <- timeout (3*10^6) getLine
print a