如何查找当前在java中执行的方法?
我想知道如何找到当前正在运行的特定方法,如果它当前正在运行,我不想执行其他函数如何查找当前在java中执行的方法?,java,android,Java,Android,我想知道如何找到当前正在运行的特定方法,如果它当前正在运行,我不想执行其他函数 Class myclass extending someclass{ private void method A(){ //somthing here } private void method B(){ //somthing here } private void method C(){ B();//don't want to call B if A is running
Class myclass extending someclass{
private void method A(){
//somthing here
}
private void method B(){
//somthing here
}
private void method C(){
B();//don't want to call B if A is running
//somthing here
}
}
布尔标志不起作用。我不想要静态布尔标志。当移动设备的方向改变时,我调用不同的函数,但在四个方向中的一个方向,我要检查函数当前是否正在运行。检查此链接
您还可以设置一个标志,该标志在a运行时初始化,在a执行结束时重置为null
AtomicInteger aCount = new AtomicInteger(0);
private void A() {
aCount.incrementAndGet();
try {
//
} finally {
aCount.decrementAndGet();
}
}
private void B() {
}
private void C() {
if (aCount.intValue() == 0) {
B();
}
}
您是否尝试过设置一个标志,该标志在a运行时初始化,在a执行过度时重置为null?您指的是运行吗?你的意思是另一个线程正在运行该方法,还是仅仅是从方法A中调用了方法C?可能是@Amrendra的副本?你可以共享你尝试过的代码吗?你确定不只是想使用同步原语,如锁定、信号量等吗?