チェリーピーの場合、ソースがあります。コードを調べて、このコードをWXquickloop()
の とマージしてみてください。MainLoop()
両方のループは、おそらく次のようになります。
while (true) {
if (pendingEvents()) processEvents ();
else waitForEvents ();
}
待機中の 2 つの呼び出しを 1 つにマージする方法を見つける必要があります (いずれかのイベント ソースに保留中のイベントがある場合、コードは続行されます)。WX についてはDispatch()
、 、Pending()
および を参照してくださいProcessIdle()
。
または、そこにあるすべてのcherrypyイベントを見てwxIdleEvent
(ドキュメントを参照)、処理することもできます。
別の解決策は、2 つのループを異なるスレッドで実行することです。この場合、cherrypy コードから WX メソッドを呼び出すことはできず、その逆も同様です。これを解決するには、どのメソッドを呼び出すかのすべての情報を含むメッセージを他のスレッドに送信する方法を見つける必要があります。これにより、WX メソッドが WX スレッドで実行され、cherrypy メソッドが cherrypy スレッドで実行されるようになります。