程序在一个包中。调用过程时,客户端函数被挂起。所以他们要求为API设置超时。可能吗?
不是直接的。但是,我相信你应该能够完成你想要的东西,虽然我从来没有这样做过,也没有时间把现在的概念证明放在一起。以下是您需要做的概述:
1)看到这个答案的技巧(kludge?)让Oracle的资源管理器限制执行时间:https://stackoverflow.com/a/43532330/5174436
2)将资源计划使用者组映射修改为仅应用于给定MODULE_NAME
的资源限制。
3)通过DBMS_APPLICATION_INFO.SET_MODULE
在程序中设置给定的模块名称。
我不保证它会起作用。如果我面对你的需要,这只是我会尝试的。
实际上,这不是真的..如果我面对你的需要,我真正要做的是弄清楚为什么程序是“悬挂”并修复它。