1

我认为以下可能是不可能的,但我想我会检查所有相同的。如果我有 2 个类“A 类”和“B 类”,Apex 是否可以在“B 类”中确定“B 类”的实例当前是否正在执行(反之亦然)?

提前感谢您对此的任何帮助。

4

1 回答 1

1

我认为您可以使用全局静态变量作为标志。B 类开始执行时设置一个,您可以从 A 类中读取它,当 B 类执行完毕时取消它。以下是使用此类标志的示例:假设您有以下类:

public class p { 
   public static boolean firstRun = true; 
}
A trigger that uses this class could then selectively fail the first run of the trigger:

trigger t1 on Account (before delete, after delete, after undelete) { 
       if(Trigger.isBefore){
          if(Trigger.isDelete){
             if(p.firstRun){
                 Trigger.old[0].addError('Before Account Delete Error');
                  p.firstRun=false;
              } 
           }
        }
}
于 2013-09-21T13:59:57.153 回答