我正在構建一個Qt應用程序並使用QNetworkAccessManager來管理我的http請求。由於QNetworkAccessManager的異步性質,您必須綁定一個插槽以在完成時接收QNetworkReply。如何發送任意的下載請求到適當的處理程序
我是新來的多線程設計,所以我不知道如何處理這個。我將有3種不同類型的網絡答覆,需要在綁定的插槽中解析,然後傳遞給正確的處理程序。一個會提取一個鏈接,第二個會提取一張圖片,第三個會解析帖子請求的回覆以驗證它是否成功。所有這些都發生在QWidget子類中。
所以,我想知道這通常如何處理。正如我所看到的那樣,我完全基於直覺,因爲我對這個具體問題的閱讀很少,所以我會認爲有兩種方法可以解決這個問題。一個是根據調用重新綁定網絡管理器的finished()信號,另一個是使用某種狀態標誌並檢查這些信號以查看應答的預期結果。什麼是首選方法,不一定在這兩者之間,這只是我能想到的自己,有經驗的人可能會有更好的解決方案。
現在,我對C++也相當陌生,所以如果後者是更好的方法,在這種情況下處理標誌的最佳方法是什麼?我會使用bitset,枚舉/標誌設置功能還是其他?多謝你們!
當您提出請求時,您是否知道由於此請求會得到哪種類型的答覆? – 2011-02-27 08:28:04