Слияние кода завершено, страница обновится автоматически
void PollingThread::WorkThread(void *) {
while (!shutdown_) {
DWORD NumberOfBytesTransferred = 0;
void *CompletionKey = NULL;
LPOVERLAPPED lpOverlapped = NULL;
bool ret = iocp_.polling(&NumberOfBytesTransferred, (PULONG_PTR)&CompletionKey,
&lpOverlapped, 1000);
OverLappedEx *olex = (OverLappedEx *)lpOverlapped;
EventDetail detail;
detail.error_code = 0;
detail.event_type = olex->event_type;
detail.ptr = CompletionKey;
detail.overlaped = olex;
detail.transferred_bytes = NumberOfBytesTransferred;
olex->service->OnEventProcess(&detail);
}
}
Вход Перед тем как оставить комментарий