summaryrefslogtreecommitdiffstats
path: root/src/corelib/thread/qmutex.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2012-08-15 22:37:42 +0200
committerQt by Nokia <qt-info@nokia.com>2012-08-26 13:57:58 +0200
commit3717802653049b794d5fbb006b8a671bd02e5896 (patch)
tree535a2665d77f6edb914d3eae55dbcc5386b12cb8 /src/corelib/thread/qmutex.cpp
parent8e7b86de2c69c9c48c8431bf6ea9e6b0b29f00f8 (diff)
Small optimisation to recursive mutexes
A recursive mutex operates on top of a non-recursive mutex. Therefore, we can bypass the test for recursive. The end result is simply that the compiler can inline the locking and unlocking a little better inside the lock() and unlock() functions Change-Id: Ic06d1344ccd411c22cbdef74536f3a4d368d75d7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/thread/qmutex.cpp')
-rw-r--r--src/corelib/thread/qmutex.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/corelib/thread/qmutex.cpp b/src/corelib/thread/qmutex.cpp
index 1d35b76c92..1a064a1775 100644
--- a/src/corelib/thread/qmutex.cpp
+++ b/src/corelib/thread/qmutex.cpp
@@ -520,7 +520,7 @@ bool QRecursiveMutexPrivate::lock(int timeout) QT_MUTEX_LOCK_NOEXCEPT
}
bool success = true;
if (timeout == -1) {
- mutex.lock();
+ mutex.QBasicMutex::lock();
} else {
success = mutex.tryLock(timeout);
}
@@ -539,7 +539,7 @@ void QRecursiveMutexPrivate::unlock() Q_DECL_NOTHROW
count--;
} else {
owner = 0;
- mutex.unlock();
+ mutex.QBasicMutex::unlock();
}
}