基于pthread实现读写锁
读写锁可用于在多线程访问map等数据结构时使用
#include <pthread.h> class ReadWriteLock { public: ReadWriteLock() { pthread_rwLock_init(&m_lock, NULL); } ~ReadWriteLock() { pthread_rwLock_destroy(&m_lock); } void ReaderLock() { pthread_rwLock_rdlock(&m_lock); } void ReaderUnLock() { pthread_rwLock_unlock(&m_lock); } void WriterLock() { pthread_rwLock_wrlock(&m_lock); } void WriterUnLock() { pthread_rwLock_unlock(&m_lock); } private: //禁止对读写锁进行拷贝 ReadWriteLock(const ReadWriteLock& src); ReadWriteLock& operator=(const ReadWriteLock& rhs); private: pthread_rwlock_t m_lock; };