Qt信號和槽對值傳遞參數和引用傳遞參數方法


在多線程傳遞參數時,遇到了信號槽跨線程參數傳輸錯誤問題,總結如下:

在同一個線程中
當信號和槽都在同一個線程中時,值傳遞參數和引用傳遞參數有區別:
值傳遞會復制對象; 
引用傳遞不會復制對象;

不在同一個線程中
當信號和槽不在同一個線程中時,分兩種情況。
1、connect時使用AutoConnection(跨線程默認是QueuedConnection):值傳遞參數和引用傳遞參數沒有區別,都會復制對象;(測試時,打印傳遞前后的地址不同)
2、connect時使用DirectConnection,測試結果和在同一線程中的結果相同

 

參考:

https://blog.csdn.net/u010168781/article/details/82108522

https://blog.csdn.net/life_is_too_hard/article/details/52089723


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM