Added srt::sync::SharedLock to non-exclusively lock srt::sync::SharedMutex.
Added srt::sync::ExclusiveLock to exclusively lock srt::sync::SharedMutex. Won't reuse srt::sync::ScopedLock as a template to avoid specifying the type of mutex each time (ScopedLock<Mutex>). Could be typedefed, but the ScopedLock definition would have to be moved out of the POSIX version then (not a bad thing though).
Added srt::sync::CSharedObjectPtr class essentially combines SharedMutex and a pointer to an object to gain access.
Changed CUDT::m_pListener to srt::sync::CSharedObjectPtr.
srt::sync::ScopedLock
as a template to avoid specifying the type of mutex each time (ScopedLock<Mutex>
). Could be typedefed, but the ScopedLock definition would have to be moved out of the POSIX version then (not a bad thing though).srt::sync::CSharedObjectPtr
class essentially combines SharedMutex and a pointer to an object to gain access.CUDT::m_pListener
tosrt::sync::CSharedObjectPtr
.Closed #2984 (replaces).