On Unix, send() on a non-blocking socket could return error EWOULDBLOCK if outbound socket buffer is full. In this case, one should call select() to determine when it's possible to retry. Does Boost sockets in nonblocking mode handle all of this for you?
Asked
Active
Viewed 212 times
2
-
EWOUDLBLOCK only arises in non-blocking mode. Async mode is not non-blocking mode. It is akin to blocking mode on a separate thread. – user207421 Sep 08 '19 at 01:27
-
I should clarify, I am using the boost socket in non-blocking mode (I set non_blocking(true) – theactiveactor Sep 09 '19 at 14:41
1 Answers
0
Yes, it does. You can check for yourself for example here boost/asio/detail/impl/socket_ops.ipp
.

Tom Trebicky
- 638
- 1
- 5
- 11