Monday, August 25, 2014

Synchronous and Asynchronous sockets.

Whenever we perform some operation on a socket, it may not be able to complete immediately and return control back to your program.
For example:
                  A read on a socket cannot complete until some data has been sent by the remote host.If there is no data waiting to be read, one of the two things can happen,
  • The function can wait until some data has been written on the socket, OR  
  •  It can return immediately with an error that indicates that there is no data to be read.
The first case is called "Synchronous or blocking socket".
The program is "blocked" until the request for the data has been satisfied. When the remote system does write some data on the socket, the read operation will complete and execution of the program will resume. 

The second case is called an "Asynchronous or non-blocking socket", and requires that the application recognize the error condition and handle the situation properly.

String Table

A string table is a Windows resource that contains a list of IDs, values, and captions for all the strings of your application. For exa...