00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __libutilxx__sella__util__AutoReadLock_H__
00010 #define __libutilxx__sella__util__AutoReadLock_H__
00011
00012 #include "../../common.h"
00013
00014 #include <pthread.h>
00015
00016 namespace sella {
00017 namespace util {
00018 class AutoReadLock;
00019 }
00020 }
00021
00022 class sella::util::AutoReadLock {
00023 friend class AutoWriteLock;
00024
00025 public:
00026 AutoReadLock(pthread_rwlock_t & lock) throw ();
00027 ~AutoReadLock() throw ();
00028
00029 private:
00030 pthread_rwlock_t & lock;
00031 };
00032
00033 #endif
00034
00035
00036
00037