IOCP模型中如何结束线程并清理资源。 如题。我的程序最终做成一个windows系统服务程序,停止消息时主线程接收到WM_QUIT消息,我想在这里结束各个线程,清理相关资源,提供个思路吧。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要通知线程结束可以使用PostQueuedCompletionStatus,dwCompletionKey传NULL参数线程中调用GetQueuedCompletionStatus,若lpCompletionKey参数为NULL那就直接return来结束线程 其它的线程可以通过SetEvent来结束,给线程发出事件让它来关闭 我的IOCP主线程,用的这样的,应该如何结束。while(TRUE) { // 等待接受未决的连接请求 SOCKADDR_IN saRemote; int nRemoteLen = sizeof(saRemote); SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen); } while(g_bRun) //用一个全局变量来控制 { // 等待接受未决的连接请求 SOCKADDR_IN saRemote; int nRemoteLen = sizeof(saRemote); SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen); }关闭时,调用closesocket关闭sListen时,accept会返回,使之重新进入while循环,判断条件,然后就自动结束了 EXCEL文件打开后怎么指定显示某个SHEET表? ★★★VS2005下,关于自定义资源文件的读取保存程序?解决后100分相送 关于转义字符的问题,谢谢帮忙解决一下!! sock的小Case!!请指点 一个支持自动化的工程,能用两个odl文件吗? 请问怎样在状态栏中显示鼠标的位置啊?在线等ing…… 怎样拷贝、删除指定的文件? 加入了按钮图标的代码后,不但图标没有显示出来,而且按钮上的字也没了?? 这vc到底怎么学啊?大家来谈谈(有分) 哪位知道哪里有boundschecker下载 怎样获取制定程序的路径? SendMessage 在另一个窗口中为什么显示的是乱码?
线程中调用GetQueuedCompletionStatus,若lpCompletionKey参数为NULL那就直接return来结束线程
while(TRUE)
{ // 等待接受未决的连接请求
SOCKADDR_IN saRemote;
int nRemoteLen = sizeof(saRemote); SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen);
}
{ // 等待接受未决的连接请求
SOCKADDR_IN saRemote;
int nRemoteLen = sizeof(saRemote); SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen);
}关闭时,调用closesocket关闭sListen时,accept会返回,使之重新进入while循环,判断条件,然后就自动结束了