Reference: select
Author: Ellen Siever, Stephen Spainhour & Nathan Patwardhan
Date: 1999-07-02T01:37:34Z

#

| Chapter 5 Function Reference |

## select

    select rbits, wbits, ebits, timeout

The four-argument `select` operator is totally unrelated to the previously described `select` operator. This operator is for discovering which (if any) of your file descriptors are ready to do input or output, or to report an exceptional condition. It calls the `select(2)` system call with the bitmasks you've specified, which you can construct using `fileno` and `vec`, like this:

>     $rbits = $wbits = $ebits = "";
>     vec($rbits, fileno(STDIN), 1) = 1;
>     vec($wbits, fileno(STDOUT), 1) = 1;
>     $ein = $rin | $win;

The `select` call blocks until one or more file descriptors is ready for reading, writing, or reporting an error condition. timeout is given in seconds and tells `select` how long to wait.

Reference: select |  | Reference: semctl