社区
进程/线程/DLL
帖子详情
IOCP只能用CreateThread?
蒙飞鸿
2010-03-23 08:55:57
有些忠告说多线程VC编程要用_beginThreadex()、AfxBeginThread()这样的函数来替代CreateThread(),可是在很多IOCP的例子里却都是使用后者。查了查这些函数的区别是运行期库,难道IOCP的时候就没有这个运行期库的问题了?
...全文
139
9
打赏
收藏
IOCP只能用CreateThread?
有些忠告说多线程VC编程要用_beginThreadex()、AfxBeginThread()这样的函数来替代CreateThread(),可是在很多IOCP的例子里却都是使用后者。查了查这些函数的区别是运行期库,难道IOCP的时候就没有这个运行期库的问题了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
蒙飞鸿
2010-04-27
打赏
举报
回复
哦,原来_beginthreadex和CreateThread的参数列表几乎是一样的,可以用前者顶替后者。至于选哪个呢,仍期待更详尽解读。
LiuYinChina
2010-03-25
打赏
举报
回复
[Quote=引用 6 楼 stjay 的回复:]
CreateThread占用资源最小
相应地,线程函数里最好不要用库函数,可用对应的API代替
既然用IOCP,那么就尽量用API
[/Quote]
用API
cpp_crab
2010-03-23
打赏
举报
回复
_beginthreadex和CreateThread的问题一直没太在意,今天Google了一下,发现一个旧帖或许可以解决楼主的困惑…
http://topic.csdn.net/t/20000926/10/31810.html
不过我想在VS2005后的编译器,使用是微软公司对C/C++扩展的安全CRT(C Runtime Library = C运行时间库)函数,或许可以解决资源泄露的问题
蒙飞鸿
2010-03-23
打赏
举报
回复
[Quote=引用 2 楼 dengsf 的回复:]
问题存在,
写例子的人没注意而已。
用CreateThread,仅在使用了运行库跟全局变量相关的函数,
且线程退出后才会造成内存泄露,
具体见MSDN。
少量泄露对一般软件影响不大。
[/Quote]
大吞吐服务器,不考虑不行啊。。
蒙飞鸿
2010-03-23
打赏
举报
回复
不过貌似只有CREATETHREAD的参数里有IO端口,其他函数不接受这个参数,不用不行的样子。。。
dengsf
2010-03-23
打赏
举报
回复
问题存在,
写例子的人没注意而已。
用CreateThread,仅在使用了运行库跟全局变量相关的函数,
且线程退出后才会造成内存泄露,
具体见MSDN。
少量泄露对一般软件影响不大。
Vector_fz
2010-03-23
打赏
举报
回复
都是创建线程,区别应当不大吧
如果担心运行库的问题,可以全静态链接
stjay
2010-03-23
打赏
举报
回复
CreateThread占用资源最小
相应地,线程函数里最好不要用库函数,可用对应的API代替
既然用IOCP,那么就尽量用API
visualassist4680
2010-03-23
打赏
举报
回复
createthread 和 _beginThreadex 的区别不是运行效率,beginThreadex 最终调用的也是 createthread, beginthreadex 在调用 createthread 之前做了很多初始化的东西,这些初始化的东西是为了初始化运行时库的变量和空间,这样在你的线程里就可以使用 运行时库的api 例如 strlen wcscpy 之类的,如果你的线程没有使用运行时库,就可以不使用 beginthreadex,但是为了避免有人用了运行时库的api,最后所有的线程创建都用 beginthread(ex)
易语言
IOC
P线程池模块
IOC
P线程池模块,读整数,写整数,Call,工作线程,线程池_创建,线程池_销毁,线程池_发送信息,线程池_投递信息,
Create
IoC
ompletionPort,GetQueuedCompletionStatus,PostQueuedCompletionStatus,
Create
Thread
,CloseHandle,...
c++ 完成端口小demo
::
Create
Thread
(NULL, 0, Server
Thread
, (LPVOID)hCompletion, 0, 0); //创建监听套接字 SOCKET sListen = ::socket(AF_INET, SOCK_STREAM, 0); SOCKADDR_IN si; si.sin_family = AF_INET; si.sin_port = ::...
android 小米udp崩溃,UDP
IOC
P 接收数据 崩溃?解决办法
C/C++ code#include #include #include #pragma comment(lib,"ws2_32.lib") SOCKET global_skt = 0; HANDLE global_h
IOC
P = 0;...
Create
Thread
(NULL, 0,
Thread
Proc, NULL, 0, NULL); getchar(); }
阻塞模式下使用
IOC
P
刚开始想学习
IOC
P(后面也会叫完成端口)的时候,在网上找到的最多的是小猪的
IOC
P资源,里面用的AcceptEx+
IOC
P来实现的,把代码下载下来看了半天都没看明白,然后想如果从最简单的阻塞模式入手,会不会更容易理解
IOC
P...
IOC
P模型与网络编程
。提出相关问题: ... 使用
IOC
P模型需要用到哪些知识? 4. 如何使用
IOC
P模型与Socket网络编程结合起来? 5. 学会了这个模型以后与我之前写过的简单的socket程序主要有哪些不同点? 三。部分问
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章