QThreadPool: unify waitForDone() overloads

Change-Id: I1515a65fab37588372794422a43ed09ac076e108
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
This commit is contained in:
Konstantin Ritt 2012-04-16 14:39:36 +03:00 committed by Qt by Nokia
parent cbaf52b099
commit dab2e1fea7
3 changed files with 5 additions and 19 deletions

View File

@ -410,8 +410,7 @@ QThreadPool::QThreadPool(QObject *parent)
*/
QThreadPool::~QThreadPool()
{
d_func()->waitForDone();
d_func()->reset();
waitForDone();
}
/*!
@ -593,22 +592,10 @@ void QThreadPool::releaseThread()
}
/*!
Waits for each thread to exit and removes all threads from the thread pool.
*/
void QThreadPool::waitForDone()
{
Q_D(QThreadPool);
d->waitForDone();
d->reset();
}
/*!
\overload waitForDone()
\since 4.8
Waits up to \a msecs milliseconds for all threads to exit and removes all
threads from the thread pool. Returns true if all threads were removed;
otherwise it returns false.
otherwise it returns false. If \a msecs is -1 (the default), the timeout
is ignored (waits for the last thread to exit).
*/
bool QThreadPool::waitForDone(int msecs)
{

View File

@ -83,8 +83,7 @@ public:
void reserveThread();
void releaseThread();
void waitForDone();
bool waitForDone(int msecs);
bool waitForDone(int msecs = -1);
};
QT_END_NAMESPACE

View File

@ -82,7 +82,7 @@ public:
void startThread(QRunnable *runnable = 0);
void reset();
bool waitForDone(int msecs = -1);
bool waitForDone(int msecs);
void stealRunnable(QRunnable *);
mutable QMutex mutex;