社区
网络编程
帖子详情
如何iocp同时发送上千条tcp
yaya001
2007-04-14 10:41:17
想用iocp实现同时发送上千个tcp包(不同ip)的功能,看了一些例子都没有说到主动发送tcp包,都是建立一个socket监听某个端口,接收clients发来的包。
如果想要实现同时主动发送上千个tcp包(向不同的ip),是不是要加一个线程专门调用wsasend来发送?怎么写才能实现同时主动大量发?
...全文
374
12
打赏
收藏
如何iocp同时发送上千条tcp
想用iocp实现同时发送上千个tcp包(不同ip)的功能,看了一些例子都没有说到主动发送tcp包,都是建立一个socket监听某个端口,接收clients发来的包。 如果想要实现同时主动发送上千个tcp包(向不同的ip),是不是要加一个线程专门调用wsasend来发送?怎么写才能实现同时主动大量发?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fox1999
2007-04-16
打赏
举报
回复
完成端口你可以查询读完成,也可以查询写完成状态的。
用了 WSASend 后,发送完它会通知你的
不过楼主的问题好象不是问这个。
你是说主动发送数据包,你把你的客户端连接用个
for(i=0;i<client_count; i++) {
send(); //WSASend
}
这样不就可以了?
难道你的服务器不保存客户端连接句柄的呀
fox1999
2007-04-16
打赏
举报
回复
用完成端口吧,可以开上千个线程,调度线程即可
---------------
哈哈,完成端口可没有叫你开上千个线程
Hylas
2007-04-16
打赏
举报
回复
当然需要Client连你了。 它不连,你根本无法发 。
发送同一个内容时候, 上千个socket也要用同一个内存,这样就不会内存复制了。 控制好释放。
其它的,好象不存在什么问题吧 。。
通信 和 work thread 不需要那么多线程, 5,6个就差不多了,
开上千个线程序, 有点扯
mimong_lin
2007-04-15
打赏
举报
回复
接收只是个例子啊,你可以在accept客户端后,不用wsarecv,而是用wsasend了。而且,你完全可以在想要的地方调用wsasend的。
CathySun118
2007-04-15
打赏
举报
回复
用完成端口吧,可以开上千个线程,调度线程即可
yaya001
2007-04-15
打赏
举报
回复
那检测客户连接(connect)是不是也不需要加一个类似listen的线程呐?
如果我想要实现同时主动发送上千个tcp包(向不同的ip),并监听返回的包。具体的思路应该是怎么样的,能具体说说不?
呵呵
yaya001
2007-04-15
打赏
举报
回复
就是打算用完成端口呐,呵呵,有没有高人详细来说说怎么实现?
如果开一个线程来主动发tcp包的话,连接是不是不能用wsaconnect(iocp不支持吧?)
呐应该怎么实现呢?
恳请高人指点
龙凤呈祥焱
2007-04-15
打赏
举报
回复
IOCP只是用来进行异步处理的,至于你想发送异步还是接收异步没有什么限制.
检测到客户连接后直接发送查询信息就行了.
yaya001
2007-04-15
打赏
举报
回复
to unsigned:
你所说的队列加线程池的方案能简单介绍下,或提供一些参考资料或网页。
to mimong_lin:
我要实现的是先发查询,才接收client的回复。
僵哥
2007-04-14
打赏
举报
回复
IOCP是一种基于服务器的设计解决方案,而不是基于客户端的,按楼主的要求看,应该说采用队列加线程池还是可行的。
yaya002
2007-04-14
打赏
举报
回复
用iocp来实现的话,还需要启动1000个子线程??这是不是不符合iocp的思路呐?
neil_cn
2007-04-14
打赏
举报
回复
启动1000个子线程,占用1000个socket资源,连接1000个目标地址,做1000个线程的管理及同步。。。
这个需求有点不切实际哦
易语言
TCP
-
IOC
P连接
IOC
P连接源码,
TCP
-
IOC
P连接,服务器处理函数,子程序2,标记,向上跳转,调用子程序_,读内存整数,写内存整数,复制内存,取字节集地址,封装分包,CRC32,取类函数地址,取整数型地址,取类指针,启动,停止,取消息类型,
发送
数据,...
使用
IOC
P完成端口和SOCKET封装的成熟异步
TCP
类
支持客户端和服务器的常用
TCP
接口:绑定Bind、监听Listen、接收Recv、连接Conn、
发送
Send、关闭Close。所有接口均使用异步回调的方式处理,内部实现使用Windows下性能最高的
IOC
P完成端口网络模型,并很好地处理了多...
易语言
ioc
p_
tcp
服务端
易语言
ioc
p_
tcp
服务端源码,
ioc
p_
tcp
服务端,call,内存_读整数,内存_写整数,取CPU核心数量,创建堆,销毁堆,取内存,还内存,
IOC
P_启动,
IOC
P_销毁,
IOC
P_处理线程,
IOC
P_取回用户,
IOC
P_
发送
数据,
IOC
P_断开连接,PostAcceptEx,...
代码客:
Ioc
p
Tcp
Server(G-
Tcp
Server) 1.0 Demo源码
2、G-
Tcp
Server模块头文件文件,位于:\G-Sockets\G-
Tcp
Server.h(模块核心文件) 3、G-
Tcp
Server模块Lib文件,位于:\G-Sockets\G-
Tcp
Server.lib(模块核心文件) 4、无限制Demo exe文件:G-
Tcp
ServerLibDemo1.0.exe...
ioc
p.rar_
IOC
P_
ioc
p
tcp
转发_完成端口
应用完成端口进行
tcp
的连接,数据的
发送
,接收。
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章