這是一個相當直接的問題,我基本上是在尋找一種「最佳實踐」方法來實現我想要做的。在線程之間發送字符串數據(Win32)
我有一個Win32 GUI應用程序啓動一個工作線程來做一堆阻塞調用。我希望此線程將字符串消息發送回GUI,以便它們可以顯示給用戶。
目前我在想使用SendMessage會是一個很好的方法,使用WM_COPYDATA?這是正確的軌道?我原本有一個線程安全隊列類,它將簡單的通知消息發送回GUI線程,然後將該字符串從隊列中彈出。不過,我很快退後一步,意識到我不需要排隊;我可以直接發送字符串。
任何提示?謝謝!
編輯:爲了完整,我使用C++。
您最初的基於隊列的「消息傳遞」方法既標準又優雅。它比使用SendMessage更可能更快更便攜。 – 2009-06-09 05:01:48