aboutsummaryrefslogtreecommitdiff
path: root/works/life/computer-network-experiment/ReadWriteLock.h
diff options
context:
space:
mode:
Diffstat (limited to 'works/life/computer-network-experiment/ReadWriteLock.h')
-rw-r--r--works/life/computer-network-experiment/ReadWriteLock.h45
1 files changed, 0 insertions, 45 deletions
diff --git a/works/life/computer-network-experiment/ReadWriteLock.h b/works/life/computer-network-experiment/ReadWriteLock.h
deleted file mode 100644
index ee40ac0..0000000
--- a/works/life/computer-network-experiment/ReadWriteLock.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#pragma once
-#include "Common.h"
-
-#include <memory>
-
-#ifdef WIN32
-#include <Windows.h>
-#else
-#include <pthread.h>
-#endif
-
-namespace cru {
-class ReadWriteLock {
- friend void swap(ReadWriteLock &left, ReadWriteLock &right);
-public:
- ReadWriteLock();
-
- ReadWriteLock(ReadWriteLock &&other);
- ReadWriteLock &operator=(ReadWriteLock &&other);
-
- ~ReadWriteLock();
-
-public:
- void ReadLock();
- void WriteLock();
-
- bool ReadTryLock();
- bool WriteTryLock();
-
- void ReadUnlock();
- void WriteUnlock();
-
-private:
- void Destroy();
-
-private:
-#ifdef WIN32
- std::unique_ptr<SRWLOCK> lock_;
-#else
- std::unique_ptr<pthread_rwlock_t> lock_;
-#endif
-};
-
-void swap(ReadWriteLock &left, ReadWriteLock &right);
-} // namespace cru