aboutsummaryrefslogtreecommitdiff
path: root/src/sync.h
diff options
context:
space:
mode:
authorpracticalswift <practicalswift@users.noreply.github.com>2019-05-16 11:25:31 +0200
committerpracticalswift <practicalswift@users.noreply.github.com>2019-05-17 13:29:04 +0200
commitcc2588579c3fbc133a7ca762fa213ca18b736551 (patch)
tree08d7d6ec8fd9d73ddd306eca95f9e0609b4d2903 /src/sync.h
parenta822a0e4f6317f98cde6f0d5abe952b4e8992ac9 (diff)
Move LockAnnotation from threadsafety.h (imported code) to sync.h (our code)
Diffstat (limited to 'src/sync.h')
-rw-r--r--src/sync.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/sync.h b/src/sync.h
index 2667fb52f9..a4c22f67cc 100644
--- a/src/sync.h
+++ b/src/sync.h
@@ -304,4 +304,15 @@ public:
}
};
+// Utility class for indicating to compiler thread analysis that a mutex is
+// locked (when it couldn't be determined otherwise).
+struct SCOPED_LOCKABLE LockAnnotation
+{
+ template <typename Mutex>
+ explicit LockAnnotation(Mutex& mutex) EXCLUSIVE_LOCK_FUNCTION(mutex)
+ {
+ }
+ ~LockAnnotation() UNLOCK_FUNCTION() {}
+};
+
#endif // BITCOIN_SYNC_H