gpt4 book ai didi

haskell - 使用 Haskell 监控文件系统

转载 作者:行者123 更新时间:2023-12-03 20:16:45 24 4
gpt4 key购买 nike

我正在使用 FSNotify包来监视我的文件系统对 Markdown 文件的更改,所以我可以通过 Pandoc 运行它们自动地。但是,我无法让经理顺利退出。

就目前而言,我的代码基于 Yesod's use of the same package :

module Main where

import System.FSNotify
import Filesystem (getWorkingDirectory)
import System.Exit
import Control.Concurrent

main = do
cwd <- getWorkingDirectory
putStrLn "Watching current directory, press RETURN to exit."
withManager $ \man -> do
_ <- forkIO $ do
watchTree man cwd (const True) $ \fp -> print fp
_ <- getLine
exitSuccess

当我使用 runhaskell ,该程序运行良好,但如果我将其编译为可执行文件(使用 ghc --make ),当我按下回车键时,我的终端变得无响应。我在 Windows 7 64 位上编译这个。

编辑: Completed code .好吧,还没有完全完成——我还想做更多的事情——但正在工作。

最佳答案

每当我看到“在 GHCi 中工作,编译时挂起”形式的问题时,我想自己“你需要线程运行时”。

尝试使用 -threaded 重新编译看看是否有帮助。

(GHCi 是用这个标志编译的,这解释了差异。我记得外部函数调用的工作方式存在一些差异,具体取决于您是否使用线程运行时......)

关于haskell - 使用 Haskell 监控文件系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16580941/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com