69 using ShareType =
unsigned char;
75 LockedHandle(std::mutex& mutex, std::weak_ptr<ShareType> share);
77 operator bool()
const;
81 std::unique_lock<std::mutex> lock;
82 std::shared_ptr<ShareType> share;
90 WeakHandle(std::shared_ptr<std::mutex> mutex, std::weak_ptr<ShareType> share);
92 LockedHandle lock()
const;
96 std::shared_ptr<std::mutex> mutex;
97 std::weak_ptr<ShareType> share;
111 std::shared_ptr<std::mutex> mutex;
112 std::shared_ptr<ShareType> share;