【发布时间】:2014-05-03 12:37:51
【问题描述】:
我的问题更多是关于编程模式而不是具体案例。
我想知道如何更好地管理并发线程之间的交互。
比如说我有那个:
Class Ocean implements Runnable {
Boat myBoat;
// standard stuff
@Override
public void run(){
// the boat navigates through the sees…
}
}
以下是不同的线程,因为它必须同时运行:
Class Radar implements Runnable {
// standard stuff
public int scanOcean(){
// return boat.position();
}
}
例如,这两个类都是我的 Main 方法的对象。
现在的问题是:如何访问另一个线程中的方法?我查了一下,但找不到任何一致且实用的答案……
有些网站引用了可能被另一个线程使用的字段的 volatile 声明,有些介绍了事件侦听器,有些介绍了事件处理程序……我应该使用标准的观察者/主题模式吗?
谢谢!
银鸭
【问题讨论】:
-
这取决于您的用例。有多种可能的解决方案,没有一种适合所有人。
-
是的,我可以想象。但是现在我正在开发一个与我举的例子大致相同的应用程序:)
标签: java multithreading events handlers