wxPython アプリケーションに 3 つのスレッドがあります。アプリケーションは、次の 3 つの方法でハングします。
これの一般的な原因は何か知っていますか?
wxPython アプリケーションに 3 つのスレッドがあります。アプリケーションは、次の 3 つの方法でハングします。
これの一般的な原因は何か知っていますか?
何が起こっているのか正確にはわかりませんが、GUI との通信に wxPython のスレッドセーフな方法を使用していないのではないかと思います。それらは wx.CallAfter、wx.CallLater、および wx.PostEvent です。GUI に直接アクセスしないでください。
これらが実際に別のスレッドにある場合、GUI がハングすることはありません。私は自分のブログのスレッドで time.sleep() を実行したので、そうではないことがわかっています。
http://www.blog.pythonlibrary.org/2010/05/22/wxpython-and-threads/
これを理解するには、小さな実行可能なサンプル アプリが必要になるでしょう: http://wiki.wxpython.org/MakingSampleApps