首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >套接字上的Java Swing定时器同步

套接字上的Java Swing定时器同步
EN

Stack Overflow用户
提问于 2013-12-23 14:15:58
回答 1查看 135关注 0票数 1

我在一个类的两个实例之间制作一个图片游戏。一个实例是主机(套接字的主机),另一个实例是来宾。

在程序期间,几个Swing计时器被初始化并运行。这些计时器需要在两种设备上以相同的速度运行。同步两个设备的最佳方法是什么?

  • 通过套接字同步计时器的启动
  • 通过套接字同步定时器的每一个更新。

一个简短的例子-一个计时器必须倒数60秒(在60秒-> timer.stop()之后,每秒钟一个JLabel被更新为秒的数量)。

我是否需要通过套接字发送JLabel的每一个更新,而不是在客户上初始化一个定时器,或者在两个设备上初始化一个定时器,但是同步timer.start() (忽略连接的延迟)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-23 14:22:38

连接的延迟几乎肯定会使两个JVM中的任何时间偏差相形见绌,特别是因为总共只涉及60个计时器事件。因此,我建议在倒计时期间不要进行网络同步。

如果两个玩家中的一个由于GC、线程调度、虚拟内存交换等无法控制的因素而经历暂停时,可能会出现异常情况。如果您想要覆盖这些细节,那么您需要双向同步,因为这些事件可能发生在两端。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20745355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档