社区
网络编程
帖子详情
IOCP模型中如何结束线程并清理资源。
疯魔症
2011-09-13 05:46:06
如题。
我的程序最终做成一个windows系统服务程序,停止消息时主线程接收到WM_QUIT消息,我想在这里结束各个线程,清理相关资源,提供个思路吧。
...全文
69
7
打赏
收藏
IOCP模型中如何结束线程并清理资源。
如题。 我的程序最终做成一个windows系统服务程序,停止消息时主线程接收到WM_QUIT消息,我想在这里结束各个线程,清理相关资源,提供个思路吧。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
疯魔症
2011-11-01
打赏
举报
回复
崩掉。。。
疯魔症
2011-09-14
打赏
举报
回复
thanks
[Quote=引用 5 楼 shenyi0106 的回复:]
while(g_bRun) //用一个全局变量来控制
{ // 等待接受未决的连接请求
SOCKADDR_IN saRemote;
int nRemoteLen = sizeof(saRemote);
SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen)……
[/Quote]
shenyi0106
2011-09-14
打赏
举报
回复
while(g_bRun) //用一个全局变量来控制
{ // 等待接受未决的连接请求
SOCKADDR_IN saRemote;
int nRemoteLen = sizeof(saRemote);
SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen);
}
关闭时,调用closesocket关闭sListen时,accept会返回,使之重新进入while循环,判断条件,然后就自动结束了
疯魔症
2011-09-14
打赏
举报
回复
我的IOCP主线程,用的这样的,应该如何结束。
while(TRUE)
{ // 等待接受未决的连接请求
SOCKADDR_IN saRemote;
int nRemoteLen = sizeof(saRemote);
SOCKET sNew = ::accept(sListen, (sockaddr*)&saRemote, &nRemoteLen);
}
mynamelj
2011-09-13
打赏
举报
回复
其它的线程可以通过SetEvent来结束,给线程发出事件让它来关闭
疯魔症
2011-09-13
打赏
举报
回复
IOCP主线程如何结束呢.
mynamelj
2011-09-13
打赏
举报
回复
要通知线程结束可以使用PostQueuedCompletionStatus,dwCompletionKey传NULL参数
线程中调用GetQueuedCompletionStatus,若lpCompletionKey参数为NULL那就直接return来结束线程
Nginx源码分析 - Nginx启动以及
IOC
P
模型
Nginx 源码分析 - Nginx启动以及
IOC
P
模型
版本及平台信息本文档针对Nginx1.11.7版本,分析Windows下的相关代码,虽然服务器可能用linux更多,但是windows平台下的代码也基本相似 ,另外windows的
IOC
P完成端口,异步IO
模型
非常优秀,很值得一看。Nginx启动曾经有朋友问我,面对一个大项目的源代码,应该从何读起呢?我给他举了一个例子,我们学校大一大二是在紫
Windows下
IOC
P踩过的一些坑
前段时间在搞win下面的
IOC
P服务器时发现了一些很多问题,有一些问题也是折磨了好久才慢慢的理解清楚,今天就将这些踩过的坑记录下来,避免以后遇到同样的问题。
IOC
P目前是性能最好的
模型
,主要缺点是只能在windows平台下使用,一个
IOC
P对象,在操作系统
中
可以关联多个socket和(或)文件控制端。它主要是在内部封装了LIFO原则的请求队列、FIFO原则的完成包队列、多
线程
处理。是异步执行的,...
c# 完成端口
模型
IOC
P 网络NETWORK TCP/UDP通信 常用 字节byte环绕缓冲区 FIFO 内存池 源码
接受到的数据,使用环绕缓冲区来解决粘包和半包的处理 /// /// 接受到的数据,使用环绕缓冲区来解决粘包和半包的处理 /// [MultiThreadedSupport( "zh-CHS", "当前的类所有成员都可锁定,支持多
线程
操作" )] public class ReceiveQueue { #region zh-CHS
c++ 网络编程(九)LINUX/windows-
IOC
P
模型
多
线程
超详细教程及多
线程
实现服务端...
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9661012.html 先讲Linux下(windows下在后面可以直接跳到后面看): 一.
线程
基本概念 前面我们讲过多进程服务器,但我们知道它开销很大,因此我们才引入
线程
,我们可以把它看成是一种轻量级进程。它相比进程有如下几个优点:
线程
的创建和上下文切...
经典代码
IOC
P(完成端口)的C#.Net实现----解读
感谢原作者 经典代码
IOC
P(完成端口)的C#.Net实现 重复造轮子的意义在于深刻的理解和学习--- main.cs: /*using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace c2
ioc
p { class Program {
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章