|Portability||non-portable (requires STM)|
|TChan: Transactional channels
|data TChan a |
|TChan is an abstract type representing an unbounded FIFO channel.
|newTChan :: STM (TChan a)|
|Build and returns a new instance of TChan
|newTChanIO :: IO (TChan a)|
|IO version of newTChan. This is useful for creating top-level
TChans using System.IO.Unsafe.unsafePerformIO, because using
atomically inside System.IO.Unsafe.unsafePerformIO isn't
|readTChan :: TChan a -> STM a|
|Read the next value from the TChan.
|writeTChan :: TChan a -> a -> STM ()|
|Write a value to a TChan.
|dupTChan :: TChan a -> STM (TChan a)|
|Duplicate a TChan: the duplicate channel begins empty, but data written to
either channel from then on will be available from both. Hence this creates
a kind of broadcast channel, where data written by anyone is seen by
|unGetTChan :: TChan a -> a -> STM ()|
|Put a data item back onto a channel, where it will be the next item read.
|isEmptyTChan :: TChan a -> STM Bool|
|Returns True if the supplied TChan is empty.
|Produced by Haddock version 2.3.0|