我想从服务器(在java中)发送两条消息:
send: 0x01
Sleep: 5 seconds
send: 0x02
客户端是一个iPhone应用程序,有时候,当应用程序处于后台时,发送服务器需要5-10秒的时间,并且TCP在ONE PACKET中发送第一条消息AND秒消息,它如下所示:
Time 00:00:00 server sends 0x01 - and wait for ack
Time 00:00:05 server not received ack and it needs to send the second message, so the server send: 0x01 0x02
然后客户端不知道此消息的含义,并发送FIN。
有什么建议吗?
我查看了this页面,找到了避免此链接的任何选项。可能你会找到与这个问题相关的东西。
提前致谢。
答案 0 :(得分:1)
TCP是面向流的协议,而不是基于消息的协议。如果您的客户端应用无法应对以“奇怪”块状态到达的内容,那么您做错了。