在PLSQL中调用过程时,是否可以在一分钟后设置该过程的超时

在PLSQL中调用过程时,是否可以在一分钟后设置该过程的超时,plsql,timeoutexception,Plsql,Timeoutexception,程序在一个包中。调用过程时,客户端函数被挂起。因此,他们要求为API设置一个超时。有可能吗?不直接。然而,我相信你应该能够完成你正在寻找的,尽管我从来没有这样做过,现在也没有时间去做一个概念证明。以下是您需要做的工作的概要: 1) 请参阅此答案,了解如何通过执行时间限制Oracle的资源管理器: 2) 修改资源计划使用者组映射,使其仅适用于给定模块\u名称的资源限制 3) 通过DBMS\u APPLICATION\u INFO.Set\u module在过程中设置给定的模块名称 我不能保证它会起

程序在一个包中。调用过程时,客户端函数被挂起。因此,他们要求为API设置一个超时。有可能吗?

不直接。然而,我相信你应该能够完成你正在寻找的,尽管我从来没有这样做过,现在也没有时间去做一个概念证明。以下是您需要做的工作的概要:

1) 请参阅此答案,了解如何通过执行时间限制Oracle的资源管理器:

2) 修改资源计划使用者组映射,使其仅适用于给定
模块\u名称的资源限制

3) 通过
DBMS\u APPLICATION\u INFO.Set\u module
在过程中设置给定的模块名称

我不能保证它会起作用。如果我面对你的需要,我只会这么做


事实上,那不是真的。。如果我面对您的需要,我真正要做的是找出过程“挂起”的原因并修复它。

AFAIK,例如,在JDBC中可以这样做。无论如何,最好的方法是在客户端实现。不,不能在过程中设置超时。调用是同步的。我认为您最好调查被调用过程挂起的原因并修复它。首先,它是在等待什么吗?还是陷入僵局?还是只是写得效率低下?