summaryrefslogtreecommitdiff
path: root/lambda-calcul/haskell
diff options
context:
space:
mode:
authorArnaud Bailly <arnaud@pankzsoft.com>2025-11-05 13:52:17 +0100
committerArnaud Bailly <arnaud@pankzsoft.com>2025-11-05 13:52:17 +0100
commit789fefb111f0ad38a01e2faa9962167269786bb6 (patch)
tree5164764c88d76d434b7300c4790051528c24638f /lambda-calcul/haskell
parent264e81758fe4932f139819192302f4900ae1e447 (diff)
downloadlambda-nantes-789fefb111f0ad38a01e2faa9962167269786bb6.tar.gz
Immediately flush logs after writing
Diffstat (limited to 'lambda-calcul/haskell')
-rw-r--r--lambda-calcul/haskell/src/Minilang/Log.hs3
1 files changed, 2 insertions, 1 deletions
diff --git a/lambda-calcul/haskell/src/Minilang/Log.hs b/lambda-calcul/haskell/src/Minilang/Log.hs
index bae4f19..6f871bd 100644
--- a/lambda-calcul/haskell/src/Minilang/Log.hs
+++ b/lambda-calcul/haskell/src/Minilang/Log.hs
@@ -35,7 +35,7 @@ import Data.Time.Clock
diffUTCTime,
getCurrentTime,
)
-import System.IO (Handle, stdout)
+import System.IO (Handle, stdout, hFlush)
-- | Environment to control a logger thread.
data LoggerEnv m = LoggerEnv
@@ -71,6 +71,7 @@ runLog :: TChan BS.ByteString -> Handle -> IO a
runLog chan hdl = forever $ do
toLog <- atomically $ readTChan chan
BS.hPutStr hdl . (<> "\n") $ toLog
+ hFlush hdl
stopLogger' :: (MonadIO m) => Async () -> m ()
stopLogger' = liftIO . cancel