有一个 weblogic python 脚本进行线程转储并休眠 10 或 20 秒,然后在 time.sleep(30) 之后再进行一次,线程转储工作正常,但睡眠方法 time.sleep(20) 不起作用。
import time
两者都试过了from time import sleep
。
在下面收到此错误
AttributeError: java package 'weblogic.time' has no attribute 'sleep'
这个对我有用: https ://community.oracle.com/thread/3560679
import time as systime
systime.sleep(10)
这里的问题是weblogic.time
包遮蔽了 stdlibtime
模块。所以,当你尝试 时import time
,你得到的是前者,而不是后者。
(weblogic.time
除了 subpackage 或 module 之外什么都没有weblogic.time.common
,所以你在尝试使用它的sleep
函数时会出错。但这可能是一件好事——比它有一个名为的函数sleep
没有达到你的预期要好。)
如果您正在开发weblogic
自己,我可以解释如何不这样做……但如果您只是使用weblogic
,那将无济于事。
如果您正在做from weblogic import *
之前的事情,解决方案很简单:不要那样做。否则……解决起来会更复杂。
但是,如果您需要做的只是将解释器线程阻塞 20 秒,那么您可以使用 Java 来做到这一点Thread.sleep(20000)
。请参阅本教程,但实际上,您无需了解更多信息,即 Java 方法需要整数毫秒而不是浮点秒。然后你不需要time
.