|
-
March 11th, 2010, 07:59 AM
#1
sendto() returns error 10035
Hi,
I've a multi-treaded Windows 2003 Server application that sends and receives UDP packets at a high rate and over a single socket. The socket is configured to work in non-blocking mode and several threads may call the sendto() function over this socket, though there is only thread that reads from the socket. When the application calls sendto() at a very high rate that exceeds a certain threshold, we see that calls to sendto() start failing with the error code 10035 (function would block). The threshold seems to be the point where the sendto() gets called at around 7500 times per second. At this time, the application is receiving data at around the same rate, however, the recv() function works fine. Windows reported network usage at this point is around 30 mbps, or 30% on our 100 mbps fast ethernet. CPU usage on our quad-code box is around 70% at this point. Suspecting a LAN or NIC problem, I tried to run this application along with its client on the same box so that we have no actual traffic going through the NIC to the LAN. I got the same result in this test and sendto() started failing at around the same point. I'll appreciate if anyone can help me with this issue.
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|