• Advertisement
Sign in to follow this  

Clarification on usage of select() in C/C++ App

This topic is 4143 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi all, I found two documents that explains the usage of select(): 1. doc 1: "The select function determines the status of one or more sockets, waiting if necessary, to perform synchronous I/O." 2. doc 2: "The select() function supports regular files, terminal and pseudo-terminal devices, STREAMS-based files, FIFOs and pipes. The behaviour of select() on file descriptors that refer to other types of file is unspecified." I am confused, is select() supposed to be used for sockets only, or used for all I/O devices?? If used for all I/O devices, where/how does one specify the device of interest. Thanks.

Share this post


Link to post
Share on other sites
Advertisement
Like all unix I/O a socket is indistinguishable from a file. So, anything that has a file descriptor (sockets included ) can be used with select().

Edit: that is for unix only.

On windows select is a call to the wsock library, and can only be used on sockets.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement