另一种说法说只要设置SO_REUSEADDR就可以用两个UDP套接字绑定同一个端口,不知道是不是这样。 ------解决方案-------------------------------------------------------- UDP和TCP用的是不同的端口,即使端口号一样也是不同的。 传说用有地址复用(SO_REUSEADDR)一说的。 ------解决方案-------------------------------------------------------- 见过病毒用端口复用的,也就是先断开原来的端口,再自己连接上去监听。如果是自己的数据就自己处理,如果是别人的数据那么转发给另一程序。 虽然叫端口复用,好像不是真的两个程序监听同一端口的哦~~~~ ------解决方案--------------------------------------------------------探讨见过病毒用端口复用的,也就是先断开原来的端口,再自己连接上去监听。如果是自己的数据就自己处理,如果是别人的数据那么转发给另一程序。 虽然叫端口复用,好像不是真的两个程序监听同一端口的哦~~~~ ------解决方案--------------------------------------------------------应该不能 ------解决方案-------------------------------------------------------- 举个例子,假如IIS的一个web端口80;那么安装APACHE默认也是80端口的话,那APACHE就无法启动; 得出结论,一个服务只能监听一个端口; ------解决方案-------------------------------------------------------- 绑定端口只能一次 但是可以多个线程同时receive你绑定的套接字 共享你绑定的套接字 ------解决方案--------------------------------------------------------探讨绑定端口只能一次 但是可以多个线程同时receive你绑定的套接字 共享你绑定的套接字 ------解决方案-------------------------------------------------------- 没有必要, 65535个端口,一台机器用不了这么多 ------解决方案--------------------------------------------------------探讨引用:绑定端口只能一次 但是可以多个线程同时receive你绑定的套接字 共享你绑定的套接字 int retval = bind(sockSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR));线程一recvfrom(sockSrv, recvBuf, 100, 0, (SOCKADDR…… 应该是可以的。 .net下面有这样的参数vc下面应该也可以。