![](/img/trans.png)
[英]Java - Is it possible to use the Observer Pattern and threading in this way?
[英]Threading and observer pattern in Java
假设我有两个类,Main类和Worker类
class Main implements StateChangeListener extends JFrmame{
public void notifyMe(State state){
//Change the GUI according to the state
}
}
class Worker extends Thread{
public StateChangeListener listener;
public void run(){
listener.notifyMe(state);
}
}
我的问题是:假设worker在另一个线程中运行,哪个线程将运行函数notifyMe() ?
主线程还是工作线程? 谢谢
函数调用在调用它的线程的控制下执行。 在您的情况下,因为您从工作线程调用notifyMe(),工作线程将负责执行方法notifyMe() 。
您可以使用Thread.currentThread().getName()
来测试它,以打印Thread的名称。 请参阅此链接中的线程名称的getter / setter。
运行worker的同一个线程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.