QRunnable 類

The QRunnable 類是所有可運行對象的基類。 更多...

頭: #include <QRunnable>
qmake: QT += core
Since: Qt 4.4

公共函數

QRunnable ()
virtual ~QRunnable ()
bool autoDelete () const
virtual void run () = 0
void setAutoDelete (bool autoDelete )

詳細描述

The QRunnable 類是所有可運行對象的基類。

The QRunnable 類是錶示需要執行任務 (或代碼片段) 的接口,錶示是通過重實現 run () 函數。

可以使用 QThreadPool 在單獨綫程中執行代碼。 QThreadPool 刪除 QRunnable 自動若 autoDelete () 返迴 true (默認)。使用 setAutoDelete () 以改變自動刪除標誌。

QThreadPool 支持執行同一 QRunnable 多次通過調用 QThreadPool::tryStart (this) 從 run () 函數。若 autoDelete 被啓用 QRunnable 會被刪除當最後一個綫程退齣 run 函數時。調用 QThreadPool::start () 多次采用同一 QRunnable autoDelete 被啓用會創建競爭條件且不推薦。

另請參閱 QThreadPool .

成員函數文檔編製

QRunnable:: QRunnable ()

構造 QRunnable 。默認啓用自動刪除。

另請參閱 autoDelete () 和 setAutoDelete ().

[虛擬] QRunnable:: ~QRunnable ()

QRunnable 虛擬析構函數。

bool QRunnable:: autoDelete () const

返迴 true 自動刪除被啓用;否則 false。

若自動刪除被啓用, QThreadPool 將自動刪除此可運行後於調用 run ();否則,所有權仍然屬於應用程序程序員。

另請參閱 setAutoDelete () 和 QThreadPool .

[pure virtual] void QRunnable:: run ()

在子類中實現此純虛函數。

void QRunnable:: setAutoDelete ( bool autoDelete )

啓用自動刪除若 autoDelete 為 true;否則自動刪除被禁用。

若自動刪除被啓用, QThreadPool 將自動刪除此可運行後於調用 run ();否則,所有權仍然屬於應用程序程序員。

注意,必須設置此標誌先於調用 QThreadPool::start ()。調用此函數後於 QThreadPool::start () 將導緻未定義行為。

另請參閱 autoDelete () 和 QThreadPool .