2016-01-21 50 views
1

我已經構建了一個pyobjc應用程序,發現它似乎需要很長時間才能加載。pyobjc應用程序加載時間改進

我已經添加了日誌來衡量加載每一步所需的時間。在進入AppHelper.runEventLoop()之前,應用程序需要花費10秒鐘,有時需要20秒才能加載。

帶鋼向下代碼如下所示:

import objc 
objc.setVerbose(DEBUG) # debug flag True/False 
from ApplicationView import ApplicationView 
from ApplicationDelegate import ApplicationDelegate 
.... 
from PyObjCTools import AppHelper 
AppHelper.runEventLoop() 

ApplicationViewApplicationDelegate是實現了Cocoa應用程序的用戶界面,並有許多進口自定義模塊。我認爲這是需要很長時間的地方。

我的問題是:

  1. 如果導入的模塊的進口影響負載的時候,我可以添加代碼中有檢查,如果特定的進口是必然尚未與否,並且將這種幫助與加載時間?

  2. 如果我想添加啓動畫面,如果最壞情況我無法對ApplicationView和ApplicationDelegate模塊進行任何更改,並且需要等待它們加載,我該怎麼做。

回答

0

擺脫自定義模塊中的所有導入似乎有幫助,因爲它們僅在加載特定窗口(NSWindowController)時使用。這是因爲我通過NSWindowController構造應用程序,所以我只在ApplicationDelegate類的applicationDidLoad中加載主類,該類繼承NSObject的子類。

相關問題