ZVON > References > Haskell reference
| Indexes | Syntax | Prelude | Ratio | Complex | Numeric | Ix | Array | List | Maybe | Char | Monad | >> IO << | Directory | System | Time | Locale | CPUTime | Random

Module: IO
Function: hFlush
Type: Handle -> IO ()
Description: Computation hFlush hdl causes any items buffered for output in handle hdl to be sent immediately to the operating system. Error reporting: the hFlush computation may fail with: isFullError if the device is full; isPermissionError if a system resource limit would be exceeded. It is unspecified whether the characters in the buffer are discarded or retained under these circumstances.

Example 1
Program source: 

import IO

main = do hdl <- openFile "/tmp/foo.txt" WriteMode
	  hPutStr hdl "Hello," 
	  hFlush  hdl
          hPutStr hdl "world!"
	  hFlush  hdl
	  hClose hdl
	  hdl <- openFile "/tmp/foo.txt" ReadMode
	  x <- hGetContents hdl
	  putStr x
	  hClose hdl

Output: Hello, world!