Qt多線程編程的主要線程類

1、描述

Qt提供QThread類處理多線程,繼承自QObject。不受平臺影響,實現跨平臺功能。

2、主要的線程類

  • QAtomicInt:提供Interger與平臺無關的Atomic運算,即提供了整數常用的原子操作,支持四種類型的操作。支持四種類型的操作,Relaxed、Acquired、Release、Ordered。
  • QAtomicPointer:提供指針上原子運算的模板類。
  • QFuture:提供異步調用函數或執行計算進行交互的類。包括 cancel() 、setPaused() 、pause(),resume()、togglePaused() 等接口。位於QtConcurrent框架下。更加高級,無需使用低級線程原語,例如:互斥、讀寫鎖、等待條件或信號量。
  • QFutureSynchronizer:QFuture簡化爲同步線程執行的類。
  • QFutureWatcher:使用信號和槽機制來監聽QFuture執行結果。
  • QMutex:線程訪問之間的同步,互斥鎖。
  • QMutexLocker:簡化了QMutex的加鎖和解鎖過程。QMutexLocker可以安全的使用QMutex,以免忘記解鎖。
  • QReadWriteLock:讀寫鎖類。
  • QReadLocker:讀訪問加鎖解鎖類。
  • QWriteLocker:寫訪問加鎖解鎖類
  • QSemaphore:一般的count互斥類。
  • QThread:與平臺無關的線程類。
  • QThreadPool:線程池類,管理每個線程。
  • QWaitCondition:線程條件變量類。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章