5

有一个 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'
4

2 回答 2

10

这个对我有用: https ://community.oracle.com/thread/3560679

import time as systime
systime.sleep(10)
于 2014-08-28T11:27:42.893 回答
5

这里的问题是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.

于 2013-04-12T19:01:45.483 回答