diff options
| author | Frank Reininghaus <[email protected]> | 2014-01-21 19:07:58 +0100 |
|---|---|---|
| committer | Frank Reininghaus <[email protected]> | 2014-01-21 19:08:07 +0100 |
| commit | 55678afcc17fe987cb67588e34cff807dd64ad5d (patch) | |
| tree | b2618b0d14209863257521ed61687d26426e5157 /src/kitemviews/private/kdirectorycontentscounter.h | |
| parent | 419c7578f0ffec27737deafd2abd9d1356095216 (diff) | |
Use only one "directory contents counting" thread per process
The pointer to QThread object is stored in a global variable, and each
view increments/decrements a reference count when it starts/stops using
the thread. If this thread reaches zero, the thread is stopped.
Note that we cannot just use a smart pointer, like QSharedPointer, to
manage the thread, because we must make sure that the thread is not
running any more before the QThread is deleted.
REVIEW: 115064
Diffstat (limited to 'src/kitemviews/private/kdirectorycontentscounter.h')
| -rw-r--r-- | src/kitemviews/private/kdirectorycontentscounter.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/kitemviews/private/kdirectorycontentscounter.h b/src/kitemviews/private/kdirectorycontentscounter.h index 425c3632a..c03d0249c 100644 --- a/src/kitemviews/private/kdirectorycontentscounter.h +++ b/src/kitemviews/private/kdirectorycontentscounter.h @@ -78,7 +78,9 @@ private: QQueue<QString> m_queue; - QThread* m_workerThread; + static QThread* m_workerThread; + static int m_workersCount; + KDirectoryContentsCounterWorker* m_worker; bool m_workerIsBusy; |
