dispenso 1.4.1
A library for task parallelism
Loading...
Searching...
No Matches
rw_lock.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Meta Platforms, Inc. and affiliates.
3 *
4 * This source code is licensed under the MIT license found in the
5 * LICENSE file in the root directory of this source tree.
6 */
7
14#include <dispenso/detail/rw_lock_impl.h>
15
16namespace dispenso {
17
31class alignas(kCacheLineSize) RWLock : public detail::RWLockImpl {
32 public:
38 using detail::RWLockImpl::lock;
39
45 using detail::RWLockImpl::try_lock;
46
53 using detail::RWLockImpl::unlock;
54
60 using detail::RWLockImpl::lock_shared;
61
69 using detail::RWLockImpl::try_lock_shared;
70
77 using detail::RWLockImpl::unlock_shared;
78
89 using detail::RWLockImpl::lock_upgrade;
90
96 using detail::RWLockImpl::lock_downgrade;
97};
98
105class UnalignedRWLock : public detail::RWLockImpl {};
106
107} // namespace dispenso