Sets the non-blocking mode of the socket.
void non_blocking( bool mode);
If true
, the socket's synchronous operations will
fail with asio::error::would_block
if they are unable
to perform the requested operation immediately. If false
,
synchronous operations will block until complete.
Thrown on failure.
The non-blocking mode has no effect on the behaviour of asynchronous
operations. Asynchronous operations will never fail with the error asio::error::would_block
.