Scroll to navigation

null(3tcl) null(3tcl)


null - Create and manipulate null channels


package require Tcl

package require memchan



The command described here is only available in a not-yet released version of the package. Use the CVS to get the sources.
creates a null channel which absorbs everything written into it. Reading from it is not possible, or rather will always return zero bytes. These channels are essentially Tcl-specific variants of the null device for unixoid operating systems (/dev/null). Transferring the generated channel between interpreters is possible but does not make much sense.


Memory channels created by null provide one additional option to set or query.
-delay ?milliseconds?
A null channel is always writable and readable. This means that all fileevent-handlers will fire continuously. To avoid starvation of other event sources the events raised by this channel type have a configurable delay. This option is set in milliseconds and defaults to 5.

A null channel is always writable and never readable. This means that a writable fileevent-handler will fire continuously and a readable fileevent-handler never at all. The exception to the latter is only the destruction of the channel which will cause the delivery of an eof event to a readable handler.


fifo, fifo2, memchan, random, zero


channel, i/o, in-memory channel, null


Copyright (c) 1996-2003 Andreas Kupries <>
2.2 Memory channels