Qt 學習記錄 執行緒使用心得

2021-10-14 07:52:17 字數 965 閱讀 6053

c++ 建立執行緒有很多辦法和輪子,qt也提供幾種。過一段時間不用就會淡忘,然後去找別人的分享。乾脆自己記錄下。

看documentation以及其他人分享的教程加上自己日常使用的理解,如果錯誤請指正。

qt 學習記錄:執行緒使用-繼承qthread,重寫run函式

壞處:如果執行緒很多的話建立和刪除開銷很大。

qt 學習記錄:執行緒使用-繼承qobject,使用movetothread

3 qthreadpool+qrunnable:提供了乙個全域性訊號池(也可以區域性,但是一般不用),如果需要大量執行緒時候可以用到,qthread建立和**會佔大量資源。

qt 學習記錄:執行緒使用-qthreadpool+qrunnable

4 qtconcurrent:區域性訊號池,賊方便。qfuture可以看進度和找錯誤。

qt 學習記錄:執行緒使用-qtconcurrent

qtconcurrent多執行緒安全

輸入輸出有嚴格要求,基本不用考慮。(涉及到共享記憶體、檔案修改等,我是不用qtconcurrent的)

qthread多執行緒安全

提供逐執行緒資料儲存

qthreadstorage

qt 學習記錄:qthread執行緒安全 qthreadstorage

實現wait、wake:

qmutex/qmutexlocker 加鎖

qwaitecondition 等待

qt 學習記錄:qthread執行緒安全 qmutex/qmutexlocker/qwaitecondition

檔案訪問:

qreadlocker/qwritelocker 自動讀寫鎖

qreadwritelocker 讀寫鎖

qt 學習記錄:qthread執行緒安全 readwritelocker讀寫鎖

保證執行緒同步:

qsemphore 互斥訊號量

qt 學習記錄:qthread執行緒安全 qsemphore

QT使用心得

下面就對這段時間qt的使用,做乙個簡單的總結。1 兩本書推薦qt開發書籍 c gui qt4程式設計 入門書籍,裡面通過翔實的案例介紹了大量qt基本概念 程式設計技巧,對於初學者來說不可不讀。qt 高階程式設計 高階資料,裡面最有幫助的是介紹模型檢視結構的內容,可以精讀一下。2 qt的幫助文件 在安...

pymysql使用心得記錄

該記錄對應文章 豆瓣電影top250基本資訊抓取 折騰了將近兩天才把mysql資料庫功能給實現了。經過這兩天的實踐,發現了自己的很多知識點漏洞。尤其是資料編碼型別。每次要想實現把資料存入txt或其他文字檔案,都要花費好長時間,雖然大致實現思路很清晰,但是總是會遇到很多細枝末節的障礙,基礎不牢啊。說說...

pymysql使用心得記錄

該記錄對應文章 豆瓣電影top250基本資訊抓取 折騰了將近兩天才把mysql資料庫功能給實現了。經過這兩天的實踐,發現了自己的很多知識點漏洞。尤其是資料編碼型別。每次要想實現把資料存入txt或其他文字檔案,都要花費好長時間,雖然大致實現思路很清晰,但是總是會遇到很多細枝末節的障礙,基礎不牢啊。說說...