Martin Duvanel
|
socket send() call failing with errno set to EAGAIN
|
Martin Duvanel
01/09/2012 12:09 PM
post90869
|
socket send() call failing with errno set to EAGAIN
Hello,
I have a question regarding the socket interface send() method, I have a TCP server process that periodically sends data
(several kilobytes ~4 times a second) which seems to me like a small amount of data over local network. This works well
but I do see an error after some time (the timing varies a lot, between 10 seconds and 2 days), where the send() call
will return -1 with errno set to EAGAIN.
According to the documentation (http://www.qnx.com/developers/docs/6.5.0/index.jsp?topic=/com.qnx.doc.neutrino_lib_ref/s
/send.html) this should happen when send() is called on a non-blocking socket and the operation would block, but my
socket is not set to non-blocking...
Any idea what else could cause this error? Given the errno description I would be tempted to retry at least once before
giving up, but before doing that I would like to be sure I am not masking a system problem. QNX version is 6.5.0.
I also have other processes running (a http server, another tcp connection), so there is a bunch of other processes
doing socket communication.
|
|
|