AutoCAD 中的事务管理机制依赖于事务不是递归的事实。当一个事务正在结束(或中止)时,不应尝试启动和结束(或中止)另一个事务。这样做可能会导致不可预测和不稳定的结果。
为避免出现问题,在尝试开始事务之前,请检查这样做是否安全。为此,请实现事务反应器并设置一个标志来指示 AutoCAD 是否处于事务结束(或中止)操作的中间。处理事务的代码的其他部分应在尝试启动事务之前检查此标志。
由于 AutoCAD 中的各种操作都使用事务管理,并且这些操作会触发各种通知,因此在启动事务之前,使用通知代码查看启动事务是否安全尤为重要。
|