存储过程编译时遇到的奇怪问题

在PL/SQL DEVELOPER中修改一个存储过程,然后编译,这时本机上另一程序正在使用这个存储过程,因此编译时提示“存储过程正在使用,不能编译”。

但是,如果不是本机的程序在调用这个存储过程,这时编译窗口就会进入假死状态,启动另一窗口查找原因,原来是library cache pin wait,有其它用户正在使用该存储过程。

问题:为什么本机上的另一个应用在调用这个存储过程时会提示,而非本机上的应用调用这个存储过程,编译时会出现等待呢?

注:这些窗口登录的ORACLE用户是同一个用户名。