随笔分类 - WINDOWS异步机制
摘要:协程,其思想是,一系列互相依赖的协程间依次使用CPU,每次只有一个协程工作,而其他协程处于休眠状态。协程可以在运行期间的某个点上暂停执行,并在恢复运行时从暂停的点上继续执行。在WINDOWS上,微软提供了纤程API。下午花点时间撸了下代码,大家看看,挺有意思的API,适合并发处理,能简洁代码的逻辑#...
阅读全文
摘要:直接上代码VOID CALLBACK test_io_completion_routine( DWORD dwErrorCode, DWORD dwNumberOfBytesTransfered, LPOVERLAPPED lpOverlapped){ printf("dwErrorCode %d,...
阅读全文
摘要:1 KQUEUE KeInitializeQueueVOID KeInitializeQueue( IN PKQUEUE Queue, IN ULONG Count OPTIONAL );lkd> dt _KQUEUEnt!_KQUEUE +0x000 Header : _DISPATCHER_HE...
阅读全文
摘要:1 前面说到 GetOverlappedResult的bWait含义GetOverlappedResult的bWait含义表示是否需要等待,如果IO还处于PENDING状态,内部大概实现是这样 hObject = lpOverlapped->hEvent ? lpOverlapped->hEven...
阅读全文
摘要:1ReadFileEx定义BOOL WINAPI ReadFileEx( __in HANDLE hFile, __out LPVOID lpBuffer, __in DWORD nNumberOfBytesToRead, ...
阅读全文
摘要:APC :An asynchronous procedure call,异步过程调用,是微软提供的一种在线程上下文中执行代码的机制。当向一个线程插入一个USER APC时,如果线程进入alertable状态,将会触发该APC的执行线程调用哪些函数会进入alertable状态:SleepExSigna...
阅读全文

浙公网安备 33010602011771号