> Can anybody shed some light? :p One possible explanation were that anytime OnDataAvailable returns, just a few _new_ bytes are available in winsock buffer. Could be possible due to the background thread winsock creates internally with non-blocking sockets, though I'm not aware of how winsock works under the hood.
-- Arno Garrels [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html Merijn Bosma wrote: > Facts: > - 100% cpu utilization caused by OnDataAvailable being called in a > loop (sync, so no change for the message pump to work) > - Linemode = false > - we call ReceiveStr() on _every_ OnDataAvailable event > - when wsoNoReceiveLoop is set, we don't have this problem anymore > > these things seem to contradict each other? It of course is possible > that with wsoNoReceiveLoop set we still have the same problem, but we > don't notice it because the message pump has a change to kick in. > Is there any way I can get my fingers around this? Reading it all > again, I'm still coming to the same conclusion: either bug in > ReceiveStr(), bug in handling of wsoNoReceiveLoop, or me being stupid > and don't understanding things correctly. > > Can anybody shed some light? :p -- 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