看板 C_and_CPP 關於我們 聯絡資訊
我的開發平台是 win 工具是QT Creator 版本是Qt Core 5.15.2 我有兩個工作 都是需要根據URL去取文字資料 只是取回的資料一個是html一個是json 以前是先做一個然後再做另一個 現在我要改成兩個同時做 本來也沒什麼問題 每個worker裡面各自擁有QNetworkManager就好 但是官方文件那一句 「正常情況下一個程式一個manager就夠了」讓我耿耿於懷 如果要共用manager 勢必得在get後,處理finish(QNetworkReply*)這個signal 目前想到的是 1)寫一個中間人去協調。兩個worker連結中間人,中間人再去連結manager,形成一個sig/slot鏈條。老實說我自己以前寫過類似的sig/slot鏈,很阿雜,所以心裡有某種抗拒 2)兩個worker的do_finish() 的slot裡面自己去判斷抓回來的文字資料是不是自己要找的。感覺是最簡單的解法,不用多寫一個class,只是manager必定要多複製一份QNetworkReply,不確定是否為必要。 其餘的就是沒什麼好討論的 3)自己擁有各自的QNetworkManager 4)問題太小,選哪個解法都沒差 想請問如果是各位的話會選擇哪種方式呢? 感謝閱讀 ----- Sent from JPTT on my Asus ASUS_X00TDB. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.192.225.144 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1669615440.A.27A.html
wulouise: 每次get都拿到一個reply, reply各自connect不同slot? 11/29 22:41
wulouise: 這個class每個function都是reentrant, 資料不共用就沒事 11/29 22:45
jerohands: 我也是 Qt 愛好者,但我會選 cpp-httplib (逃 11/30 22:06