java - Java Swing Socket 中的数据丢失

标签 java swing sockets

我正在使用 java swing 开发一个聊天项目,其中我使用套接字编程来进行聊天消息、命令等。在测试时,我发现通过套接字从客户端程序发送到服务器程序的传输中存在数据丢失。经过对代码的深入研究,我发现通过客户端程序发送的每个消息或命令的接收间隔为 650 毫秒。在这期间,如果我尝试发送超过 1 个命令,如“cmd 1”、“cmd 2”和“cmd 3”,我只收到“cmd 1”,第二条消息消失或未收到,几毫秒后“cmd 3” “收到。请建议我一个套接字程序,其中不应发生数据丢失以使程序看起来活跃。

最佳答案

Please suggest me a socket program where no data loss should occur to make the program look live.

当然。您的服务器或客户端应发送命令并等待响应,然后再发送另一个命令。这就是超文本传输​​协议(protocol) (HTTP) 的工作原理。

这里有一些Java socket programming examples使用命令/响应协议(protocol)。最后一个示例是聊天客户端和服务器。

关于java - Java Swing Socket 中的数据丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17150448/

相关文章:

android - 套接字:Android到Unity,可能会遭到分配攻击吗?

java - Android OpenCV List<KeyPoint> 到 Mat

java - 解析和操作字符串的有效方法

java - 无法使用引用访问组件

c# 与 c++ ssl_connect

c - Recv 返回比消息长度多的字节

java - Hadoop 作业挂起等待被杀死

java - 强制 hyper jaxb2 在 hibernate 映射中生成一个提取 ="select"属性(在 <join> 标记上)

java - 如何从 JTable 的多行中获取值并将其分配给变量?

在我手动调整窗口大小之前,Java 窗口无法正确重绘