PyGTK:在分析时,gtk.main()花费的时间比预期的多,我怎么知道这是否合理?

时间:2011-07-03 16:19:07

标签: python gtk profiling pygtk

我的程序是一个不断更新显示的可视化工具。我正在尝试优化它以提高帧率,我最大的成本是gtk._gtk.main:

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    9.159    9.159   45.476   45.476 {gtk._gtk.main}
      868    8.146    0.009    9.884    0.011 xyz.py:291(gfx_transform_queue)
      868    7.705    0.009   12.657    0.015 xyz.py:322(gfx_draw_queue)
      868    3.886    0.004    7.755    0.009 xyz.py:240(gfx_queue_atoms)
   868000    2.638    0.000    4.952    0.000 xyz.py:365(gfx_draw_circle)
  7027010    2.111    0.000    2.111    0.000 xyz.py:314(cmp_queue)
  1736000    2.015    0.000    2.015    0.000 {method 'draw_arc' of 'gtk.gdk.Drawable' objects}
   869844    1.728    0.000    1.728    0.000 {numpy.core._dotblas.dot}
      868    1.635    0.002    3.746    0.004 {sorted}
   869872    1.261    0.000    1.261    0.000 {numpy.core.multiarray.array}
      933    1.100    0.001    1.100    0.001 {method 'get_pointer' of 'gtk.gdk.Window' objects}

这是合理的行为,还是我可能做错了什么让gtk.main吸了很多时间?

1 个答案:

答案 0 :(得分:1)

您正在解释分析数据错误。 gtk.main()实际上只是在用户与之交互时运行您的程序。您所看到的是运行程序需要时间,而不是gtk.main()本身。