我已经使用IronPython有一段时间了,但是真正妨碍我的开发的是它启动速度极慢。我喜欢这种语言及其工作方式,但是在代码开始执行之前等待超过20秒真的很令人沮丧。
我进行了一些研究,似乎问题不在于import
,而是在此阶段之前。
谢谢。
我已经使用IronPython有一段时间了,但是真正妨碍我的开发的是它启动速度极慢。我喜欢这种语言及其工作方式,但是在代码开始执行之前等待超过20秒真的很令人沮丧。
我进行了一些研究,似乎问题不在于import
,而是在此阶段之前。
谢谢。
我们正在2.6版本中解决这个问题。你今天可以下载Beta 1,你可能会看到启动时间有很大的改善。
问题在于大部分时间通常用于JIT编译代码。如果您使用64位机器,特别是明显得慢。在2.6版本中,我们现在将编译推迟到实际运行时才进行,如果只需要运行一两次,则解释它们,并且我们已将我们在运行时生成的一堆代码移动到IronPython.dll中,因此也从ngen中受益。您将可能从所有这些更改中看到的改进越大,应用程序越大。
如果在安装IronPython时没有选中ngen选项,您可以通过命令行返回并对其进行ngen处理,方法是执行“ngen install ipy.exe”。 ngen.exe位于C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe或C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe(如果您使用64位机器)。但需要管理员命令提示符。这将使您从稳定版本中获得一些好处。如果您使用64位机器,则即使选中该框,您也需要执行此操作-存在导致ngen在64位机器上无法正常工作的错误。