Article ID: 201213 - Last Review: February 12, 2007 - Revision: 2.3 BUG: Send() Fails with Error WSAENOBUFS Over Blocking SocketThis article was previously published under Q201213 SYMPTOMS
When large blocks of data (for example, 3-4 MB) are sent over a blocking socket, send eventually fails with error 10055, WSAENOBUFS. The online documentation indicates that send over a blocking socket should block if there is no system buffer space available:
If no buffer space is available within the transport system to hold the data to be transmitted, send will block unless the socket has been placed in a nonblocking mode. On nonblocking stream oriented sockets, the number of bytes written can be between 1 and the requested length, depending on buffer availability on both client and server machines.
RESOLUTION
When you encounter the problem described in the "Symptoms" section, please consider using one of the following workarounds:
STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article. | Article Translations
|
Back to the top
