virtchannel_base is a container for many of Tcllib's virtual channel packages.
The following script illustrates a problem with Memchan: it stops generating readable events too early. The same problem was reported (10 years ago!) for memchan. Maybe it needs to be fixed there, too.
#! /bin/env tclsh package require tcl::chan::events package require tcl::chan::memchan proc copied {args} { puts $args set ::done 1 } set chan [tcl::chan::memchan] puts -nonewline $chan [string repeat a 50000] seek $chan 0 start set chanout [open zout w] fcopy $chan $chanout -command copied vwait ::done
AMG: This bug was fixed one day after your post [L1 ].
PYK 2015-05-03: Yes, I probably posted it here first, and then went on to report it via a ticket, along with the fix. The only outstanding question is whether it needs to be fixed in Memchan as well.