DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

select(2)



                                 select(1tcl)
     _________________________________________________________________

   select -- wait for files to come available or satisfy conditions 

Synopsis

   select readfileIds [writefileIds] [exceptfileIds] [timeout]

Description

   This command allows an Extended Tcl program to wait for zero or more
   files being available for reading, writing, have an exceptional
   condition pending, or for a timeout period to expire. readFileIds,
   writeFileIds, exceptFileIds are each lists of fileIds, as returned
   from open, to query. An empty list ({}) may be specified if a category
   is not used.

   This command exits when a selected socket file descriptor closes, then
   blocks the socket.

   The files specified by the readFileIds list are checked to see if data
   is available for reading. The writeFileIds are checked if the
   specified files are clear for writing. The exceptFileIds are checked
   to see if an exceptional condition has occurred (typically, an error).
   The write and exception checking is most useful on devices, however,
   the read checking is very useful when communicating with multiple
   processes through pipes. select considers data pending in the stdio
   input buffer for read files as being ready for reading. The files do
   not have to be unbuffered.

   timeout is a floating point timeout value, in seconds. If an empty
   list is supplied (or the parameter is omitted), then no timeout is
   set. If the value is zero, then the select command functions as a poll
   of the files, returning immediately even if none are ready.

   If the timeout period expires with none of the files becoming ready,
   then the command returns an empty list. Otherwise the command returns
   a list of three elements. Each of those elements is a list of the
   fileIds that are ready in the read, write and exception classes. If
   none are ready in a class, then that element will be the null list.
   For example:
select {file3 file4 file5} {file6 file7} {} 10.5

   could return
{file3 file4} {file6} {}

   or perhaps
file3 {} {}
     _________________________________________________________________

   25 April 2004
   © 2004 The SCO Group, Inc. All rights reserved.
   UnixWare 7 Release 7.1.4 - 25 April 2004
   
See also select(3C)
See also select(3C++)
See also select(3sock)
See also select(D3oddi)

Man(1) output converted with man2html