繁体   English   中英

线程之间的通信

[英]communication between threads

我正在制作一个小型Java游戏,其中有两个线程(以及迈向多线程的第一步...),一个用于逻辑,一个用于绘图。

所以我的问题是:我该如何使这两个彼此交流?

要求:

  • 从另一个线程访问变量和对象

  • 同步它们,以便它们每个都同时完成相同数量的“循环”。 (逻辑计算,然后另一个逻辑绘制结果,循环再次开始...)

那么如何在Java中实现呢?

提前致谢!

方法是在线程内或不在线程内的方法。 只需创建一个对所有线程可见的对象,它们就都可以访问它。

1. Create a Class with logic and drawing methods. 
   Whose object is accessible by both the threads.

2. Now please do synchronize the atomic statements or methods.

3. So its like an object is shared between 2 threads.

一种用于在线程之间进行通信的简单结构是BlockingQueue

我经常发现,如果您使用BlockingQueue它将使您专注于使线程正确协同工作。 例如,他们不会提供您所要求的设施,因为实际上这些设施不是您想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM