【发布时间】:2021-12-27 00:59:59
【问题描述】:
我的项目包含 2 个不同的客户端,它们都在同一台机器上向服务器发送消息。
所有组件都有 GUI。当我们点击客户端 GUI 中的按钮时,它们开始发送消息。
服务器接收到这些消息并向缓冲区发送一条消息,告诉客户端他们不能在缓冲区中写入的缓冲区,因此客户端进入睡眠状态。
当两个客户端都在等待服务器发送“available”消息时,是否可以保证顺序?我所说的顺序是指我们首先点击发送的那个是第一个实际发送消息的那个。
客户端每次检查缓冲区时都会休眠 1 毫秒,这是一条不可用的消息。
【问题讨论】:
-
您应该包含一些代码。为什么要睡1ms?很多套接字/客户端 io 阻塞。你期望同步有多好?假设 A 比 B 稍早点击,但 B 的点击被服务器稍早收到。
-
请提供足够的代码,以便其他人更好地理解或重现问题。
标签: java multiprocessing