TCP/IP发送接收数据问题,路过的都看看。 2个进程都在本机,一个是服务端,一个是客户端,刚启动时收发数据都正常,后来服务端发的数据客户端都没收到。因为都在本机,没法抓包确认数据到底到了客户端没,服务端发送函数也没有返回错误,大家有好的办法分析没?这个问题只出现过一次,搞了半天无法下手,重启后OK了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有没有CPU利用率过高的一瞬间? 发送的数据放在 send.txt里,收到的数据放在recv.txt里面,比较一下就行了。 都在本机时,服务器端口和客户端的端口肯定不一样,服务器端口你bind时肯定知道 那你windos套接字实现的估计是阻塞模式。即recvfrom这个函数产生问题了,即网络上没有数据传来,该函数就会阻塞程序,导致调用线程暂停运行。所以有两种方式可以解决这种问题:1.你使用非阻塞模式,即使用windows socket的异步选择函数WSAAsyncSelet提供的消息机制的网络时间选择。有数就接,没有就干别的事情。2.你可以设置等待延时的时间,在一定的时间里如果有数来就接,若我设置等待的时间到了还没有数据过来我就不等了,干别的事去! codeproject 和 CodeGuru上看看, 代码没法帖,我这里只有服务端,客户端代码看不到。服务端采用如下方式接收数据,有个类继承自ACE_Svc_Handler,然后在handle_input中调用this->peer_.recv后来没出现了,当时忘了抓堆栈看看线程在干嘛了。有人能有本机抓包工具就好了。 MFC,通一个窗体上实现了聊天通讯之后,再如何实现tabcontrol控件。 关于CString的Format函数 关于HTML中SAVE_AS的问题:如何隐藏了SAVE_AS的弹出对话框? CGenericList 是什么 自己编写函数来确认数据 怎么老出错误? 请教如何让对话框控件如LISTCTRL,RICHEDIT的边框可以由用户动态伸缩 如何使CDialog中的CStatic能够响应单击事件? 菜鸟跪寻帮助!! 为什么会多处一个线程?? 怎样在一副图片中加入文字,也是需要VC的源码 关于OpenGL的成像问题 edit control中使用整形值,如何设置其取值范围?
2.你可以设置等待延时的时间,在一定的时间里如果有数来就接,若我设置等待的时间到了还没有数据过来我就不等了,干别的事去!
服务端采用如下方式接收数据,有个类继承自ACE_Svc_Handler,然后在handle_input中调用this->peer_.recv
后来没出现了,当时忘了抓堆栈看看线程在干嘛了。
有人能有本机抓包工具就好了。