【发布时间】:2019-09-22 18:35:08
【问题描述】:
我正在尝试执行以下操作。我有一个方法foo(),从那个方法我调用方法doSomeWork()。我还有一个侦听器MytListener,它侦听doSomeWork(),并在doSomeWork() 完成时调用方法onExecution()。
public void foo() {
doSomeWork();
// wait until doSomeWork is complete
// access output from method onExecution
// do some actions with output
}
public class MyListener implements Listener {
void onExecution(Output output) {}
}
我的目标是等到方法doSomeWork 完成,然后从方法foo 内部访问output。是否真的有可能实现这一目标,您能否就如何实现这一目标提供一些建议?
【问题讨论】:
-
那么 foo() 与 MyListener 属于不同的类吗?
-
这是一个奇怪的逻辑流程。为什么不在
MyListener上调用foo()的任何类的方法,然后进行一些输出操作? -
@FailingCoder 不需要,foo() 可以在 MyListener 类中。
-
@Augusto Object 只有在调用监听方法 onExecution 时才会创建输出。我只能对 onExecution 方法内部的输出执行一些操作。很抱歉,如果它令人困惑。
标签: java concurrency listener