Query: fblocked
OS: opensolaris
Section: 1t
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
fblocked(1T) Tcl Built-In Commands fblocked(1T) __________________________________________________________________________________________________________________________________________________NAMEfblocked - Test whether the last input operation exhausted all available inputSYNOPSISfblocked channelId _________________________________________________________________DESCRIPTIONThe fblocked command returns 1 if the most recent input operation on channelId returned less information than requested because all avail- able input was exhausted. For example, if gets is invoked when there are only three characters available for input and no end-of-line sequence, gets returns an empty string and a subsequent call to fblocked will return 1. ChannelId must be an identifier for an open channel such as a Tcl standard channel (stdin, stdout, or stderr), the return value from an | invocation of open or socket, or the result of a channel creation command provided by a Tcl extension.EXAMPLEThe fblocked command is particularly useful when writing network servers, as it allows you to write your code in a line-by-line style with- out preventing the servicing of other connections. This can be seen in this simple echo-service: # This is called whenever a new client connects to the server proc connect {chan host port} { set clientName [format <%s:%d> $host $port] puts "connection from $clientName" fconfigure $chan -blocking 0 -buffering line fileevent $chan readable [list echoLine $chan $clientName] } # This is called whenever either at least one byte of input # data is available, or the channel was closed by the client. proc echoLine {chan clientName} { gets $chan line if {[eof $chan]} { puts "finishing connection from $clientName" close $chan } elseif {![fblocked $chan]} { # Didn't block waiting for end-of-line puts "$clientName - $line" puts $chan $line } } # Create the server socket and enter the event-loop to wait # for incoming connections... socket -server connect 12345 vwait foreverSEE ALSOgets(1T), open(1T), read(1T), socket(1T), Tcl_StandardChannels(3TCL)KEYWORDSblocking, nonblockingATTRIBUTESSee attributes(5) for descriptions of the following attributes: +--------------------+-----------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +--------------------+-----------------+ |Availability | SUNWTcl | +--------------------+-----------------+ |Interface Stability | Uncommitted | +--------------------+-----------------+NOTESSource for Tcl is available on http://opensolaris.org. Tcl 7.5 fblocked(1T)
Related Man Pages |
---|
fblocked(1t) - opensolaris |
fblocked(n) - centos |
fblocked(3tcl) - debian |
fblocked(ntcl) - mojave |
gets(3) - php |
Similar Topics in the Unix Linux Community |
---|
How to insert the "\n" in a line? |
Furia-chan 1 (Default branch) |
open a socket on a server |
OpenNaken 1.30 (Default branch) |