我正在使用pydev + jython.great ide,但是当我尝试运行jython程序时速度很慢。 这可能是由于库加载时间造成的。
我该怎么做才能加快速度?
谢谢, 参见Yaniv
答案 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来查看它们中是否有更好的性能。