aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2012-02-26 15:16:22 +0100
committerMachiavelli <machiavelli.trinity@gmail.com>2012-02-26 15:16:22 +0100
commitb2e4f8f9585cd06af648929bb044b2cb5333f770 (patch)
treed4b7d1ce1cbfdf77f673229fbc8e4e9f532621e1 /src
parentca17e1c7e49200e1df6b9c29f7f12b408fce9f48 (diff)
Core/Misc: Add some documentation to TRINITY_WRITE_GUARD and TRINITY_READ_GUARD because ACE's documentation on underlying objects is not clear.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/shared/Common.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server/shared/Common.h b/src/server/shared/Common.h
index 57809cca255..259c60ade20 100755
--- a/src/server/shared/Common.h
+++ b/src/server/shared/Common.h
@@ -208,10 +208,14 @@ typedef std::vector<std::string> StringVector;
ACE_Guard< MUTEX > TRINITY_GUARD_OBJECT (LOCK); \
if (TRINITY_GUARD_OBJECT.locked() == 0) ASSERT(false);
+//! For proper implementation of multiple-read, single-write pattern, use
+//! ACE_RW_Mutex as underlying @MUTEX
# define TRINITY_WRITE_GUARD(MUTEX, LOCK) \
ACE_Write_Guard< MUTEX > TRINITY_GUARD_OBJECT (LOCK); \
if (TRINITY_GUARD_OBJECT.locked() == 0) ASSERT(false);
+//! For proper implementation of multiple-read, single-write pattern, use
+//! ACE_RW_Mutex as underlying @MUTEX
# define TRINITY_READ_GUARD(MUTEX, LOCK) \
ACE_Read_Guard< MUTEX > TRINITY_GUARD_OBJECT (LOCK); \
if (TRINITY_GUARD_OBJECT.locked() == 0) ASSERT(false);