QWriteLocker 類是簡化寫訪問鎖定和解鎖讀寫鎖的方便類。 更多...
| 頭: | #include <QWriteLocker> |
| qmake: | QT += core |
注意: 此類的所有函數 綫程安全 .
| QWriteLocker (QReadWriteLock * lock ) | |
| ~QWriteLocker () | |
| QReadWriteLock * | readWriteLock () const |
| void | relock () |
| void | unlock () |
The purpose of QWriteLocker (and QReadLocker ) 是簡化 QReadWriteLock 鎖定和解鎖。鎖定和解鎖語句或在異常處理中,代碼容易齣錯且難以調試。QWriteLocker 可以用於這種狀況以確保鎖的狀態始終定義良好。
這裏的範例是使用 QWriteLocker 鎖定和解鎖讀寫鎖對於寫入:
QReadWriteLock lock; void writeData(const QByteArray &data) { QWriteLocker locker(&lock); ... }
它相當於以下代碼:
QReadWriteLock lock; void writeData(const QByteArray &data) { lock.lockForWrite(); ... lock.unlock(); }
The QMutexLocker 文檔編製展示使用鎖定器對象大大簡化編程的範例。
另請參閱 QReadLocker and QReadWriteLock .
構造 QWriteLocker 和鎖
lock
為寫入。鎖將被解鎖當 QWriteLocker 被銷毀時。若
lock
為 0,QWriteLocker 什麼都不做。
另請參閱 QReadWriteLock::lockForWrite ().
銷毀 QWriteLocker 並解鎖被傳遞給構造函數的鎖。
另請參閱 QReadWriteLock::unlock ().
返迴指嚮被傳遞給構造函數的讀寫鎖的指針。
重新鎖定被解鎖的鎖。
另請參閱 unlock ().
解鎖關聯此鎖定器的鎖。
另請參閱 QReadWriteLock::unlock ().