UDP通讯问题 各位大侠好,我做的UDP通信的程序,是在软件启动时就开始监听,收到某些特定数据后发消息,现在收和发都没有问题了,但是我发现这个问题:当我有几秒不收数据后就总是收不到了,直到我往外发送一条消息后才能再继续收到数据,再隔几秒收不到就又收不到了,这是怎么回事呢,为什么会收不到呢?收和发有什么联系呢?望各位高手指点! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先和你写的程序逻辑有关.这个需要你自己参考其他人代码.或者经验了其次是udp本身是不安全的连接,会丢包.当网络不稳定的时候尤其严重. 如果你的电脑是在局域内,通过NAT与外网连接,当你通过一个端口向外发送数据时,NAT会分配一个端口,通过这个端口与外网通讯,如果一段时间不收发数据,NAT就会自动收回这个端口,这样外网就无法发送数据过来了。如果是这个问题可以通过发送心跳包来解决。 我的是CDMA手机,给PC机发送数据,这个PC机是与路由器连接的,通过做端口映射来将UDP端口映射到PC机上,PC机总是能收到数据,出现我所说这个问题的是CDMA手机,这个CDMA手机应该是直接与外网相连的吧,请您帮我分析一下这种情况吧,谢谢您了 啊,我还没有接触过心跳包这个概念,就是说每隔多少秒发一个包来防止收回端口是吗?那您说像我这种情况,这是不是CDMA手机收回了端口呢 对手机不了解,不过你可以用心跳包来试试,用SetTimer设置一个定时器,每秒发送一个包,看看能否解决这个问题。 我发心跳包是设置的三秒钟发送一次,这样就没有什么问题了,端口不会被回收,但是我觉得它不应该这么快就收回啊,至少也得等几分钟再收回啊,所以是不是我的程序还是有问题呢,有什么相关的设置项吗,像这种UDP0接收的有没有什么相关的测试项啊? 1~2分钟的比较常见,但你的运行环境是手机,所以就不好说了,有可能是几秒钟。如果有地方设置,也应该是在系统中找,与UDP协议没有关系。 如何判断在当前文件夹有无创建新文件的权限 把屏幕图像绘制到自己的程序界面上。 100分请求高手详细地帮忙讲解一下这段网游代码 顶点法线方向计算 分层次的纹理映射和纹理的平均分配 怎样用IWebBrowser2实现共同浏览 急!请问:一般情况下,如何在一个程序中将控制权转移到另一个程序(进程),两个程序都可编? 如何用编序把文件夹设置成共享文件夹? help 精通Windows外壳编程的大侠请进。。。 CListCtrl控件中使用CHeaderCtrl后数据显示的问题 x264 error LNK2019: unresolved external symbol _write_frame referenced in function _Decode
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货