Skip to content

Commit 4a3f963

Browse files
authored
feat: use async-lock for RwLock and Barrier
1 parent 1184a7f commit 4a3f963

File tree

5 files changed

+9
-718
lines changed

5 files changed

+9
-718
lines changed

Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ std = [
5252
"slab",
5353
"wasm-bindgen-futures",
5454
"futures-channel",
55-
"async-mutex",
5655
"async-channel",
56+
"async-lock",
5757
]
5858
alloc = [
5959
"futures-core/alloc",
@@ -64,7 +64,7 @@ tokio03 = ["async-global-executor/tokio03"]
6464

6565
[dependencies]
6666
async-attributes = { version = "1.1.1", optional = true }
67-
async-mutex = { version = "1.1.3", optional = true }
67+
async-lock = { version = "2.3.0", optional = true }
6868
crossbeam-utils = { version = "0.8.0", optional = true }
6969
futures-core = { version = "0.3.4", optional = true, default-features = false }
7070
futures-io = { version = "0.3.4", optional = true }

src/sync/barrier.rs

-229
This file was deleted.

src/sync/mod.rs

+7-9
Original file line numberDiff line numberDiff line change
@@ -177,22 +177,20 @@
177177
pub use std::sync::{Arc, Weak};
178178

179179
#[doc(inline)]
180-
pub use async_mutex::{Mutex, MutexGuard};
180+
pub use async_lock::{Mutex, MutexGuard, MutexGuardArc};
181181

182-
pub use rwlock::{RwLock, RwLockReadGuard, RwLockWriteGuard};
183-
184-
mod rwlock;
182+
#[doc(inline)]
183+
pub use async_lock::{RwLock, RwLockReadGuard, RwLockUpgradableReadGuard, RwLockWriteGuard};
185184

186185
cfg_unstable! {
187-
pub use barrier::{Barrier, BarrierWaitResult};
186+
pub use async_lock::{Barrier, BarrierWaitResult};
188187
#[allow(deprecated)]
189188
pub use channel::{channel, Sender, Receiver, RecvError, TryRecvError, TrySendError};
190189
pub use condvar::Condvar;
190+
pub(crate) use waker_set::WakerSet;
191191

192-
mod barrier;
193192
mod condvar;
194193
mod channel;
195-
}
196194

197-
pub(crate) mod waker_set;
198-
pub(crate) use waker_set::WakerSet;
195+
pub(crate) mod waker_set;
196+
}

0 commit comments

Comments
 (0)