刚开始遇到这个问题时有点懵,UDP为何还有分启动顺序?看一下我遇到的错误:spa
仔细检查了代码以后,发现ClientEnd的IP端口都是0,哦!我原来在和假地址交流。server
接着就查找其为何是0,发现server创建好时候的问候(发消息创建通信),client还在睡觉(尚未启动) 而后就找度娘搜索答案,发现改Hosts或者IP都试了好像没什么用处,SO就想办法怎么可以让client起床(启动)以前,server一直叫它呢(尝试创建通信)?因为才接触UDP,我这里想到的是一个笨方法,大牛能够略过,热心的话能够教一下萌新更高效的办法,十分感谢。blog
本人解决办法:cli
首先要明白只是Client向Server发消息会出现这些问题,Server向Client发送消息彻底没问题。搜索
UDP不链接单发消息是不会有问题的。重载server的send方法,发送特殊标记(项目中必定用不到的字符)到client,判断client是否接收了,若是接受返回标记到server,改变发送状态。断线亦是如此。方法
Server:im
检测写在Receive();d3
Client:项目