我處於需要拆開GUI應用程序(使用wx和扭曲,在MS Windows上運行)的情況下,取出核心邏輯並將其作爲cron作業部署在沒有GUI環境的linux服務器上。如何使用twisted來構造這個應用程序?
我用threading.timer替換了一些wx.CallLater和wx.CallAfter。顯然它不起作用。原代碼在多線程環境下不能很好地運行。這可能是因爲一些底層庫不是線程安全的。線程也可能不會以與扭曲相同的方式安排作業。
所以它是GUI應用程序的典型工作流程:
用戶切換按鈕切換按鈕變綠之後啓動實時數據讀取器(用C語言編寫)
這意味着讀者已經開始運行。用戶繼續在不同的實時數據類型之間切換
當新的數據集準備就緒時,用戶將開始使用應用中的其他功能。
我的問題:
我如何使用雙絞線重新上述工作流程?扭曲的工具允許我等待步驟2中提到的實時數據讀取器的準備情況?
一切都會在主線程中「發生」嗎?