在摇动中使用并行构建时,我得到如下格式错误的输出:
[»] Compiling src/Game/Game.cpp
[»] Compiling [»] Compiling [»] Compiling src/Graphics/Image/Png/PngLoader.cpp
src/Main.cpp
src/System/HeartBeat.cpp
[»] Compiling src/Window/Window.cpp
[»] Compiling src/Window/GlfwContext.cpp
我想这是我打印的某种同步问题。我应该注意,我使用以下命令作为输出命令:
shakeOutput = const $ BS.putStr . BS.pack
我的规则的状态消息打印部分如下所示:
liftIO $ setSGR [SetColor Foreground Vivid Green]
putNormal "[\175] Compiling "
liftIO $ setSGR [SetColor Foreground Vivid Yellow]
putNormal $ c ++ "\n"
liftIO $ setSGR [Reset]
有没有办法避免我的输出内置抖动出现这种打印问题?如果不知道打印代码在抖动规则内,则适合使用哪种 haskell 同步方法?