QThreadPool: optimize enqueueTask() for common case
authorKonstantin Ritt <ritt.ks@gmail.com>
Mon, 16 Apr 2012 11:43:27 +0000 (14:43 +0300)
committerQt by Nokia <qt-info@nokia.com>
Tue, 17 Apr 2012 16:44:13 +0000 (18:44 +0200)
commitcbaf52b09971edf6f3e1458f7dd677b80a1568ed
tree69397551456ebd1cf18cd3e7ff2a3fb88090858d
parent95bd974163d9103634a5ce4cbfc9bc3c4827dee1
QThreadPool: optimize enqueueTask() for common case

the most-common case is: queue is empty or filled with tasks of
the same priority; so the runnable would be put at the end of queue.
both checks are cheap for us.

also avoid detach()'ing by using const iterators

Change-Id: Iab2255f852211f9accc8d717f778671661210ef3
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
src/corelib/thread/qthreadpool.cpp