2016-07-03 52 views
-1

我有一个马名单谁将有一场比赛。所以我为每匹马创建了一个线程来模拟比赛。每匹马都有这个属性名称和年龄。该轨道将在run方法内运行。在赛道期间,我喜欢监视和比较每匹马/线程的行驶距离。有没有一种方法来比较每个线程的变量java

+0

请加上代码 –

+0

好的,我把自己改成马。我会更新帖子并添加codd – javako

+1

@ShyamBhimani我已经更新了这篇文章,并把我的代码。编号喜欢比较每个线程/马匹的行驶距离。 – javako

回答

0

是有办法的变量比较每个线程的Java

是啊。

  • 声明变量作为Horse类的实例变量;例如添加一个实例变量来保持旅行的距离。 (它必须是实例变量。您不能从另一个线程访问一些方法内的局部变量。)
  • 为变量的Horse
  • 添加一个公共的getter方法在你想要的地方做的比较:
    • 迭代Horse对象
    • 调用getter方法
    • 比较返回的值。

然而,有一个很大的疑难杂症。运行每个Horse的线程将与正在查看/比较位置的线程不同。因此,所有对“行驶距离”变量的访问/更新都必须同步,否则存在线程不会看到另一个更新所做更新的风险。

+0

你可以给我示例代码在hor实现吗? TIA – javako

+0

对不起,不,你会学到更多,如果你自己解决这个问题。 –

相关问题