如何确保两个程序永远不会同时执行



过程1检查文档状态并将其更改为下一步
步骤2检查文档状态,并通过一个步骤将其还原。

问题是:如果意外地同时调用了过程,过程2会首先更改状态,然后过程1不会按应有的方式执行,因为它得到了错误的状态。

是否可以确保它们永远不会对同一文档同时执行?

您可以使用设置过程的模块

DBMS_APPLICATION_INFO.SET_MODULE()

然后在模块运行时进行检查:

SELECT 1 
FROM v$session
WHERE MODULE = <your MODULE>;

最新更新