在运行脚本时如何让Pydev + jython更快地启动?

时间:2009-09-23 18:31:33

标签: python jython pydev

我正在使用pydev + jython.great ide,但是当我尝试运行jython程序时速度很慢。 这可能是由于库加载时间造成的。

我该怎么做才能加快速度?

谢谢, 参见Yaniv

2 个答案:

答案 0 :(得分:2)

Jython启动时间很慢......启动时间很多!

每次从头开始运行Jython脚本时,都会产生相同的Jython启动时间成本。

因此,Jython,Java和Python不适合CGI调用。因此,Apache中mod_python的原因。

关键是启动Jython一次并重用它。但这并不总是可能,尤其是在开发期间,因为您的模块总是在变化,而Jython不会自动识别这些变化。

Jython需要一种方法来了解哪些模块已更改为自动重新加载。这不是Jython的内置,你必须依赖其他一些第三方库来帮助解决这个问题。这个概念是从'sys.modules'中删除已经改变的模块。一个简单的解决方案是清除sys.modules中的所有模块 - 这将导致重新加载所有模块。这显然不是最有效的解决方案。

另一个提示是仅在您真正需要模块时导入模块所需的模块。如果导入模块顶部的每个模块,将增加模块导入成本。因此,重构导入到需要它们的方法/函数内以及它“有意义”的地方。当然,如果您的方法/函数计算量很大并且经常使用,则无法在该方法/函数中导入模块。

希望,这可以帮助你!

答案 1 :(得分:1)

如果您的计算机有多个处理器,您可以尝试使用选项-vmargs -XX:+UseParallelGC启动eclipse / pydev。您也可以尝试使用不同的JVM来查看它们中是否有更好的性能。