【问题标题】:Why wxPython applications are slow to start?为什么 wxPython 应用程序启动缓慢?
【发布时间】:2011-04-09 22:07:35
【问题描述】:

有没有办法加快 wxPython 的启动速度?应用程序在我的 Ubuntu 机器上启动通常需要大约 5 秒,即使我编写了最简单的代码!

import wx

class MyApp(wx.App):
        def OnInit(self):
                frame = wx.Frame(None, id = wx.ID_ANY, title = u"Duplicate Detector", pos = wx.DefaultPosition, size = wx.Size( 800,600 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
                frame.Show(True)
                return True

if __name__ == "__main__":
    app = MyApp(redirect=False)
    app.MainLoop()

上面的一小段代码需要一些时间来加载。

【问题讨论】:

  • 任何代码?它们会立即在 ubuntu 和 windows 上为我加载。
  • 它们在 Windows 上的加载速度通常比我快。也许你应该显示一个闪屏或其他东西。如果您的程序中有一些缓慢的东西,例如大量的数据库访问或文件读取,请在加载后或在线程中执行。
  • 您的代码在 Ubuntu 10.10 上几乎立即为我启动

标签: python wxpython wxwidgets


【解决方案1】:

wxPython 是一个很大的包,需要很长时间才能加载。其他工具包可能需要更少的时间,但移植应用程序的努力可能不值得。

$ time python -c 'import wx'

real    0m1.646s
user    0m0.306s
sys     0m0.079s

【讨论】:

  • 并非如此。预加载文件没有帮助,因为预加载将花费相同的时间,而且在应用程序实际启动之前,您无法进行包设置。
  • time python -c "import wx": real 0m0.143s user 0m0.108s sys 0m0.020s
猜你喜欢
  • 1970-01-01
  • 2010-11-08
  • 2018-02-20
  • 1970-01-01
  • 2020-10-28
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多