gpt4 book ai didi

haskell - 是否有一个库可以检测设置了哪些 RTS 标志?

转载 作者:行者123 更新时间:2023-12-02 18:39:08 25 4
gpt4 key购买 nike

当我运行 ./MyProgram +RTS -N4 时,我希望我的程序自动检测到它正在 4 个核心上运行,并创建 4 个 Spark 来处理数据集。现在,每次我想更改此选项时,我都要重新编译,这很烦人。

最佳答案

回答你原来的问题:运行时选项是 GHC 特定的,GHC 提供了一个模块,可以让你查看完整的参数列表(包括 +RTS-RTS) 传递给程序:GHC.Environment .

这里有一个小演示:

import GHC.Environment (getFullArgs)
import System.Environment (getArgs)

main = do
getFullArgs >>= mapM putStrLn
putStrLn "=="
getArgs >>= mapM putStrLn
return ()

将程序编译为 ghc App.hs --make -rtsopts -threaded 执行时将产生以下结果:

./App hello +RTS -N4 -RTS ook ooks
hello
+RTS
-N4
-RTS
ook
ooks
==
hello
ook
ooks

关于haskell - 是否有一个库可以检测设置了哪些 RTS 标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12737621/

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