diff options
author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-02-06 15:08:41 -0500 |
---|---|---|
committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-02-06 15:08:41 -0500 |
commit | 344c46a20c8055daada15d70bf2dbd2cd5555be8 (patch) | |
tree | d7ff514786aa3b1347ad768a64b68bfd08e99f90 /indra/llmessage/llbuffer.h | |
parent | 127f6d14050bd1d10b3a4b4b8a4c315da43e9f92 (diff) | |
parent | 289d756ea86bd3898f41592146d8f549cd056846 (diff) |
merge, conflicts in llvertexbuffer.{h,cpp}
Diffstat (limited to 'indra/llmessage/llbuffer.h')
-rw-r--r-- | indra/llmessage/llbuffer.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/indra/llmessage/llbuffer.h b/indra/llmessage/llbuffer.h index 1c42b6fbc6..ccdb9fa7ee 100644 --- a/indra/llmessage/llbuffer.h +++ b/indra/llmessage/llbuffer.h @@ -39,6 +39,7 @@ #include <list> #include <vector> +class LLMutex; /** * @class LLChannelDescriptors * @brief A way simple interface to accesss channels inside a buffer @@ -564,6 +565,29 @@ public: * @return Returns true on success. */ bool eraseSegment(const segment_iterator_t& iter); + + /** + * @brief Lock the mutex if it exists + * This method locks mMutexp to make accessing LLBufferArray thread-safe + */ + void lock(); + + /** + * @brief Unlock the mutex if it exists + */ + void unlock(); + + /** + * @brief Return mMutexp + */ + LLMutex* getMutex(); + + /** + * @brief Set LLBufferArray to be shared across threads or not + * This method is to create mMutexp if is threaded. + * @param threaded Indicates this LLBufferArray instance is shared across threads if true. + */ + void setThreaded(bool threaded); //@} protected: @@ -595,6 +619,7 @@ protected: S32 mNextBaseChannel; buffer_list_t mBuffers; segment_list_t mSegments; + LLMutex* mMutexp; }; #endif // LL_LLBUFFER_H |