~ExclusiveSynchronization(){pthread_rwlock_unlock(m_lock->get());}
~SharedSynchronization(){pthread_rwlock_unlock(m_lock->get());}
ExclusiveSynchronization(RWLock *lock):m_lock(lock) { pthread_rwlock_wrlock(m_lock->get()); }
SharedSynchronization(RWLock *lock):m_lock(lock) { pthread_rwlock_rdlock(m_lock->get()); }