日期:2014-05-20  浏览次数:20603 次

遇到一个TCP通信的问题
Apple服务器规定了这样一个通信方式:

正常建立连接后,
你向它发个消息,如果它接受成功、解析成功,那么没有任何回应。
如果它发现问题那么回复一条错误消息。

我就奇怪,这个成功不回复应该怎么处理呢?发出消息后我的线程睡一会儿?
有没有错误都得尽快结束,并发很大的时候老阻塞着真的不行。。
可是等待得太短我又担心等不到回复,纠结中。Apple怎么设计了这么2的通信方式呢!!!
------解决方案--------------------
这个接口的设计确实很糟糕。既然服务器端只能是这样的话,那你就设置一个超时时间呗,例如3秒,3秒没有收到回复消息就认为已经成功了。