DDraceNetwork Documentation
Loading...
Searching...
No Matches
lock.h File Reference
#include <mutex>
Include dependency graph for lock.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CLock
 
class  CLockScope
 

Macros

#define THREAD_ANNOTATION_ATTRIBUTE__(x)
 
#define CAPABILITY(x)    THREAD_ANNOTATION_ATTRIBUTE__(capability(x))
 
#define SCOPED_CAPABILITY    THREAD_ANNOTATION_ATTRIBUTE__(scoped_lockable)
 
#define GUARDED_BY(x)    THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))
 
#define PT_GUARDED_BY(x)    THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x))
 
#define ACQUIRED_BEFORE(...)    THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(__VA_ARGS__))
 
#define ACQUIRED_AFTER(...)    THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(__VA_ARGS__))
 
#define REQUIRES(...)    THREAD_ANNOTATION_ATTRIBUTE__(requires_capability(__VA_ARGS__))
 
#define REQUIRES_SHARED(...)    THREAD_ANNOTATION_ATTRIBUTE__(requires_shared_capability(__VA_ARGS__))
 
#define ACQUIRE(...)    THREAD_ANNOTATION_ATTRIBUTE__(acquire_capability(__VA_ARGS__))
 
#define ACQUIRE_SHARED(...)    THREAD_ANNOTATION_ATTRIBUTE__(acquire_shared_capability(__VA_ARGS__))
 
#define RELEASE(...)    THREAD_ANNOTATION_ATTRIBUTE__(release_capability(__VA_ARGS__))
 
#define RELEASE_SHARED(...)    THREAD_ANNOTATION_ATTRIBUTE__(release_shared_capability(__VA_ARGS__))
 
#define RELEASE_GENERIC(...)    THREAD_ANNOTATION_ATTRIBUTE__(release_generic_capability(__VA_ARGS__))
 
#define TRY_ACQUIRE(...)    THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_capability(__VA_ARGS__))
 
#define TRY_ACQUIRE_SHARED(...)    THREAD_ANNOTATION_ATTRIBUTE__(try_acquire_shared_capability(__VA_ARGS__))
 
#define EXCLUDES(...)    THREAD_ANNOTATION_ATTRIBUTE__(locks_excluded(__VA_ARGS__))
 
#define ASSERT_CAPABILITY(x)    THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x))
 
#define ASSERT_SHARED_CAPABILITY(x)    THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x))
 
#define RETURN_CAPABILITY(x)    THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))
 
#define NO_THREAD_SAFETY_ANALYSIS    THREAD_ANNOTATION_ATTRIBUTE__(no_thread_safety_analysis)
 

Macro Definition Documentation

◆ ACQUIRE

◆ ACQUIRE_SHARED

◆ ACQUIRED_AFTER

#define ACQUIRED_AFTER (   ...)     THREAD_ANNOTATION_ATTRIBUTE__(acquired_after(__VA_ARGS__))

◆ ACQUIRED_BEFORE

#define ACQUIRED_BEFORE (   ...)     THREAD_ANNOTATION_ATTRIBUTE__(acquired_before(__VA_ARGS__))

◆ ASSERT_CAPABILITY

#define ASSERT_CAPABILITY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(assert_capability(x))

◆ ASSERT_SHARED_CAPABILITY

#define ASSERT_SHARED_CAPABILITY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(assert_shared_capability(x))

◆ CAPABILITY

#define CAPABILITY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(capability(x))

◆ EXCLUDES

◆ GUARDED_BY

#define GUARDED_BY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(guarded_by(x))

◆ NO_THREAD_SAFETY_ANALYSIS

◆ PT_GUARDED_BY

#define PT_GUARDED_BY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(pt_guarded_by(x))

◆ RELEASE

◆ RELEASE_GENERIC

◆ RELEASE_SHARED

◆ REQUIRES

◆ REQUIRES_SHARED

◆ RETURN_CAPABILITY

#define RETURN_CAPABILITY (   x)     THREAD_ANNOTATION_ATTRIBUTE__(lock_returned(x))

◆ SCOPED_CAPABILITY

◆ THREAD_ANNOTATION_ATTRIBUTE__

#define THREAD_ANNOTATION_ATTRIBUTE__ (   x)

◆ TRY_ACQUIRE

◆ TRY_ACQUIRE_SHARED