我用 UDP 在 Java 中实现了聊天。我有一个线程将数组列表的数据发送到另一个客户端,一个线程从另一个客户端接收数据。可以用方法填充数组列表。
为了发送消息,从数组列表中挑选出一个字节[],发送它的长度,然后发送字节。
现在我正在考虑丢包。我该如何解决这个问题?将消息发回将是非常低效的。如果接收方没有收到消息,我可以发回一条消息,因为我知道消息的长度,但为此我需要在两个客户端都有第二个套接字,因为接收方和发送方是两个线程。另一个问题是当具有数据长度的数据包丢失并且读取的数据包是长度时会发生什么。
有人可以帮我如何实现吗?
(TCP 不是解决方案,因为我喜欢做 UDP 打孔)