I've used TWSocket/TWSocketServer to build client/server successfully in the
past. Now I have one where I need to send a 20MB block of data from server
to client. Depending on the computer where the server is running and where
the client is running, my block of data does not always get sent (using
TWSocketClient.Send, either with one large block or in multiple successive
I understand that this design is not the most elegant nor technically
strong. But it is my understanding that TWSocket is built to handle this
situation and I'd like to know what I'm doing wrong.
What happens under the hood is that the underlying Ics window stops
receiving FD_WRITE messages, such that the remaining buffered data never
gets sent. Calling Send another time results in TWSocket trying to resume
that buffer but Windows indicates a WSAWOULDBLOCK error (a non fatal error
telling the application to retry later). Otherwise, the socket is still
operative and correctly receives data or disconnect messages. But Send will
be non working for the rest of the session.
Any idea of what could be wrong?
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be