Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qreadwritelock.cpp File Reference

(b67ebbe3a0b161f4205f722a8c8a051808144439)

#include "qplatformdefs.h"
#include "qreadwritelock.h"
#include "qthread.h"
#include "qreadwritelock_p.h"
#include "private/qfreelist_p.h"
#include "private/qlocking_p.h"
#include <algorithm>
+ Include dependency graph for qreadwritelock.cpp:

Go to the source code of this file.

Functions

static bool contendedTryLockForRead (QAtomicPointer< QReadWriteLockPrivate > &d_ptr, QDeadlineTimer timeout, QReadWriteLockPrivate *d)
 
static bool contendedTryLockForWrite (QAtomicPointer< QReadWriteLockPrivate > &d_ptr, QDeadlineTimer timeout, QReadWriteLockPrivate *d)
 
static auto handleEquals (Qt::HANDLE handle)
 

Function Documentation

◆ contendedTryLockForRead()

static Q_NEVER_INLINE bool contendedTryLockForRead ( QAtomicPointer< QReadWriteLockPrivate > & d_ptr,
QDeadlineTimer timeout,
QReadWriteLockPrivate * d )
static

Definition at line 193 of file qreadwritelock.cpp.

References QReadWriteLockPrivate::allocate(), d, lock, Q_ASSERT, Q_ASSERT_X, QReadWriteLockStates::StateLockedForRead, and QReadWriteLockStates::StateMask.

+ Here is the call graph for this function:

◆ contendedTryLockForWrite()

static Q_NEVER_INLINE bool contendedTryLockForWrite ( QAtomicPointer< QReadWriteLockPrivate > & d_ptr,
QDeadlineTimer timeout,
QReadWriteLockPrivate * d )
static

Definition at line 308 of file qreadwritelock.cpp.

References QReadWriteLockPrivate::allocate(), d, lock, and Q_ASSERT.

+ Here is the call graph for this function:

◆ handleEquals()

static auto handleEquals ( Qt::HANDLE handle)
static

Definition at line 472 of file qreadwritelock.cpp.

Referenced by QReadWriteLockPrivate::recursiveLockForRead(), and QReadWriteLockPrivate::recursiveUnlock().

+ Here is the caller graph for this function: