Index   Commented   Search   About

Multiple Provider Restrictions on select

The select function is used to determine the status of one or more sockets in a set. For each socket, the caller can request information on read, write, or error status. A set of sockets is indicated by an FD_SET structure.

Windows Sockets 2 allows an application to use more than one service provider, but the select function is limited to a set of sockets associated with a single service provider. This does not in any way restrict an application from having multiple sockets open through multiple providers.

There are two ways to determine the status of set of sockets that span more than one service provider: 1) using the WSAWaitForMultipleEvents or WSAEventSelect functions when blocking semantics are employed, and 2) using the WSAAsyncSelect function when nonblocking operations are employed.

When an application needs to use blocking semantics on a set of sockets that spans multiple providers, WSAWaitForMultipleEvents is recommended. The application can also use the WSAEventSelect function, which allows the FD_XXX network events (see WSAEventSelect) to associate with an event object and be handled from within the event object paradigm (described in Overlapped I/O and Event Objects).

The WSAAsyncSelect function is recommended when nonblocking operations are preferred. This function is not restricted to a single provider because it takes a socket descriptor as an input parameter.

Related Links

Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET

More Online Helps

Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages

Free Tech Secrets ;) Copyright © 2008 Free Tect Secrets ;) greatis just4fun network just4fun