This folder contains three basic sample programs that demonstrate the use of multiple threads by a server. This sample is for illustration, and isn't a high-performance server. The combined client and server program are non-blocking, and use the WSAPoll function to determine when it's possible to send or receive without blocking. This folder contains a basic sample program that demonstrates the use of the WSAPoll function. Using overlapped I/O allows for greater scalability. The server uses the AcceptEx function to multiplex different client connections in a single-threaded Win32 application. The sample program uses the AcceptEx function and overlapped I/O to effectively handle multiple asynchronous connection requests from clients. This folder contains a sample server program that uses overlapped I/O. Winsock servers that use I/O completion ports provide the highest performance. For convenience, a simple client program, iocpclient, was developed to connect and continually send data to the server to stress it using multiple threads. The server programs support multiple clients connecting by using TCP/IP, and sending arbitrary-sized data buffers that the server then echoes back to the client. The programs include: a Winsock server, iocpserver, that uses the WSAAccept function a Winsock server, iocpserverex, that uses the AcceptEx function and a simple multithreaded Winsock client, iocpclient, used to test either of these servers. That folder contains three sample programs that use I/O completion ports. They're listed here in order from higher to lower performance, and are found in the following directories: Several more advanced Winsock client and server sample apps are available on GitHub.
0 Comments
Leave a Reply. |