注册 登录
编程论坛 VC++/MFC

如何多线程同时接收多个客户端的数据?

zqm7251 发布于 2008-12-05 20:46, 1827 次点击
define PORT 34000 /// Select any free port you wish
    AfxSocketInit(NULL);
    CSocket sockSrvr;
    sockSrvr.Create(PORT); // Creates our server socket
    sockSrvr.Listen(4);
////如上设置了监听为4,怎样用多线程同时与多个客户端的数据通信
4 回复
#2
沼泽2008-12-06 12:47
当有客户端请求连接时就专门创建一个线程来处理与这个客户端的数据通信,连接断开后再销毁这个线程,有多个客户端连接时就创建多个线程
#3
zqm72512008-12-08 19:15
谢谢二楼,可是我创建了线程出现两个问题:1、我主线程有个按钮响应函数,怎么调用没响应。2、子线程如何调用主线程的变量呢。
#4
mayudong12008-12-09 15:20
1.不知道
2.可以通过参数传递进去,但需要进行同步

再有,listen中的参数好像不是可以连接的客户端数,即使设成1,也可以连接很多客户端
#5
njlhq2012-02-20 13:09
一楼楼主,我也遇到了这样的问题,可以把你的源代码发给我看一下吗?谢谢了,    QQ354188681
1