Original Post
Hi all, I developed a network library for my game that is non-blocking udp. In my original design, I had two threads for communication, one for receiving and one for sending. In the receving thread, there is a select() call that blocks until a read event occurs and then handles that. In a seperate thread, I have another select() for writes (which, I guess, doesn't seem necessary since it never blocks but I keep it there for safety) and I basically have a queue where I add messages to. This thread goes past a select() statment, checks the queue size, calls sendto() for each message and then goes to sleep for a set amount of time (or until something is put into the queue in which case the thread is awakened). Now, this was working fine when I was testing it on PCs. But, now I'm testing the code with an Xbox. And Xbox doesn't like me using the same socket to do another operation if it is already blocking (it's blocking on the select() call for reading) even though I have a seperate thread. I get issued the WSAEINPROGRESS error code. Is there a workaround for this where I can still use one socket? Thanks, Lehel