这是我从视图页面调用的方法:
public void methodA() {
methodB();
System.out.println("Complete");
}
public void methodB() {
// some operation go here
//it's execution time is minimum 5 min
}
我的问题是:我想在完成执行methodB()
之前从methodB()
发布,我想要打印"完成"它包含在methodA();
答案 0 :(得分:3)
您似乎想要某种异步处理。您希望异步调用methodB()
并在methodA
完成之前退出methodB
。
有很多方法可以实现这一点,但最简单而不是最好的方法是使用线程:
public void methodA() {
new Thread() {
public void run() {
methodB();
}
}.start();
System.out.println("methodB is called asynchronously");
}
您可以使用线程提取,执行程序框架,队列等来改进这一点。选择具体的解决方案取决于您的需求。欢迎您学习如何使用java中的线程,然后提出更具体的问题。但我希望这个答案可以给你“正确”的方向。