1

cefpython で簡単なオフスクリーン レンダラーを作成しました。

私は を使用cefpython.MessageLoop()しており、毎秒何かを行うための別のスレッドがあります。

[... cefpython initialization ...]

startTime = time.time()

def main_loop():
    print time.time() - startTime
    threading.Timer(1, main_loop).start()

main_loop()
cefpython.MessageLoop()

これは正常に動作しますが、30 秒後に速度が低下します (その後、ループは 10 秒ごとに更新されます)。

これは私が得る出力です:

[CEF Python] Initialize() called
[CEF Python] CefExecuteProcess(): exitCode = -1
[CEF Python] CefInitialize()
[...]
3.11049604416
4.11594009399
5.11900210381
[...]
27.2121961117
28.2259521484
29.2369601727
[... then it updates every 10 seconds ...]
40.1490521431
50.1502101421
60.1521630287

奇妙なことに、ターミナル ウィンドウから google chrome にフォーカスを切り替えたときにもループが更新されます (ただし、ターミナルから他のアプリに切り替えたときは更新されません)。

- - アップデート - -

python アプリ (OS X ドックの python のロケット アイコンからアクセス可能) に焦点を当てると、ループは適切に実行されます。Pythonスクリプトを起動した端末にフォーカスを移してもループが正常に更新されないので戸惑いました。

4

0 に答える 0