gpt4 book ai didi

haskell - 如何仅使用 Haskell 无休止地运行 Haskell 程序?

转载 作者:行者123 更新时间:2023-12-04 11:22:18 28 4
gpt4 key购买 nike

我有需要每 5 分钟执行一次的小程序。

目前,我有执行该任务的 shell 脚本,但我想通过 CLI 中的键为用户提供无需其他脚本即可运行它的能力。

实现这一目标的最佳方法是什么?

最佳答案

我想你会想要这样的东西(或多或少的伪代码):

import Control.Concurrent (forkIO, threadDelay)
import Data.IORef
import Control.Monad (forever)

main = do
var <- newIORef 5000
forkIO (forever $ process var)
forever $ readInput var

process var = do
doActualProcessing

interval <- readIORef var
_ <- threadDelay interval

readInput var = do
newInterval <- readLn
writeIORef var newInterval

如果需要将一些更复杂的数据从输入线程传递给处理线程, MVar s 或 TVar s 可能是比 IORef 更好的选择s。

关于haskell - 如何仅使用 Haskell 无休止地运行 Haskell 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33101730/

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