requests, so no two threads within the event code of the same objects) I now can only think of the following: select() returns that data has arrived on the socket n. The OS throws away the data (some kind of buffer overflow, do you have large Pdus?) and the recvfrom() waits because nothing is there. So the solution would be to add the MSG_DONTWAIT flag to the recvfrom() call. Regards, Jochen