每个线程建立一个socket,会不会冲突? 为每个线程建立一个socket用于接收数据,而且端口都一样,会不会冲突?如果没有问题干嘛还要用select模式、WSAAsyncSelect模式,直接就为每个线程建立一个socket,反正他们都会找到自己的socket,不会冲突。select模式、WSAAsyncSelect模式优点是什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不会,TCP会自动选择不同的端口用netstat -a 就可以看到了 不是很清楚。但我们的程序是开一个线程就建立一个socket,没问题。 我是用udp,端口自己定的,会不会冲突? 如果没有问题的话,嘛还要用select模式、WSAAsyncSelect模式,直接就为每个线程建立一个socket,反正他们都会找到自己的socket,不会冲突。 to Richuen22(江无缺) 端口不能相同?不可能吧,如果这样的话,发方怎样知道发去那个端口。 老大,你怎么这么死板呢.他既然能在选择模式条件下,为每个线程建立Socket不发生冲突,那就说明:为每个线程建立一个socket用于接收数据,而且端口都一样,不会冲突 其实你问这个问题的关键是你没有理解线程的含义和工作机制,建议你看看深入浅出MFC里面讲的特别清楚。 TCP用了套接字对的技术,支持同一服务器在同一端口与多个套接字建立TCP连接,但TCP协议不允许多个服务器绑定到同一个IP地址和同一个端口号,即不允许同时存在多个完全相同的绑定!UDP则未使用套接字对技术,不能用同一端口. 那么IE和Netscape都使用80端口,他们为什么不冲突呢?好像浏览器用的是UDP吧? IE和Netscape是连接到服务器而不是在端口侦听吧。 浏览器用的是TCP所谓的同一端口其实只是listen的端口,对于每个不同的socket会自动分配不同的端口号的UDP端口不能相同,不然会返回10048(WSAEADDRINUSE)错误,如果要使用UDP通信,就必须知道对方接收数据的端口号 select模式、WSAAsyncSelect模式优点是什么?就是在不用线程的情况下可以同时处理多个端口!你以为线程那么好用么? 不是每个人都喜欢用线程的。再有就历史原因, 在设计TCP编程接口时,好象还没线程呢。 不太能够理解,如果仅仅是listen用的80端口,connect用了另外的端口,怎么可能通过路由器呢?(如果路由器仅开放80端口的话) 这个变量要不要delete? CTreeCtrl的问题 求救,关于文件缩略显示? 关于dll全局共享变量的问题, 初学windows程序设计 想编个小程序练练手 请前辈们指点指点 为什么会这样? 请问snmp编程的步骤?高分相送 软件需求是客户的要求??还是软件的要求,程序员的要求,程序员对xx的要求?。。 高手看过来!如何以最小的代价把基于文档、视图的程序转到动态链接库中? C++多线程问题 asp调用activex失败!。。。。。。。。 各位高手请指点
TCP会自动选择不同的端口
用netstat -a 就可以看到了
端口不能相同?不可能吧,如果这样的话,发方怎样知道发去那个端口。
他既然能在选择模式条件下,为每个线程建立Socket不发生冲突,那就说明:
为每个线程建立一个socket用于接收数据,而且端口都一样,不会冲突
所谓的同一端口其实只是listen的端口,对于每个不同的socket会自动分配不同的端口号的UDP端口不能相同,不然会返回10048(WSAEADDRINUSE)错误,
如果要使用UDP通信,就必须知道对方接收数据的端口号
就是在不用线程的情况下可以同时处理多个端口!你以为线程那么好用么?
不是每个人都喜欢用线程的。再有就历史原因, 在设计TCP编程接口时,
好象还没线程呢。