Re: [boost] Asio multithreaded server

Christopher Kohlhoff wrote:
@@ -125,10 +125,13 @@ #endif LPOVERLAPPED overlapped = 0; ::SetLastError(0); - ::GetQueuedCompletionStatus(iocp_.handle, &bytes_transferred, - &completion_key, &overlapped, INFINITE); + BOOL ok = ::GetQueuedCompletionStatus(iocp_.handle, + &bytes_transferred, &completion_key, &overlapped, 1000); DWORD last_error = ::GetLastError();
+ if (!ok && overlapped == 0 && last_error == WAIT_TIMEOUT) + continue; + if (overlapped) { // We may have been passed a last_error value in the completion_key.
Note that I haven't tested that it even compiles.
Thanks again, but I cannot make it works: same problem as before... Maybe I'll try the CVS version when you will confirm it's fixed. Bye
participants (1)
-
berserker_r