资源介绍:
易语言IOCP线程池模块源码例程程序置入汇编代码,调用API函数实现IOCP多线程操作。点评:易语言IOCP线程池模块源码是易语言汇编应用例程。
资源作者:
三叶易语言
资源界面:
.版本 2
.子程序 工作线程, 整数型
.参数 参数, 整数型
.局部变量 lpfn, 整数型
.局部变量 hHeap, 整数型
.局部变量 CompletionPort, 整数型
.局部变量 BytesTransferred, 整数型
.局部变量 CompletionKey, 整数型
.局部变量 lpOverlapped, 整数型
.局部变量 ret, 整数型
' 回调指针 + 0,线程数 + 4,堆 + 8,完成端口 + 12,线程句柄 + 16
lpfn = 读整数 (参数)
hHeap = 读整数 (参数 + 8)
CompletionPort = 读整数 (参数 + 12)
.判断循环首 (真)
GetQueuedCompletionStatus (CompletionPort, BytesTransferred, CompletionKey, lpOverlapped, #INFINITE)
.如果真 (CompletionKey = 0)
跳出循环 ()
.如果真结束
' 消息类型 + 0,事件 + 4,返回 + 8,参数1 + 12,参数2 + 16,参数3 + 20
ret = Call (lpfn, 参数, 读整数 (CompletionKey + 12), 读整数 (CompletionKey + 16), 读整数 (CompletionKey + 20))
.如果 (读整数 (CompletionKey) ≠ 0)
写整数 (CompletionKey + 8, ret)
SetEvent (读整数 (CompletionKey + 4))
.否则
HeapFree (hHeap, 0, CompletionKey)
.如果结束
.判断循环尾 ()
返回 (0)
资源下载:
iocp线程池