1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*******************************************************************************
*
* Copyright (c) 2025 - 2026 Haixing Hu.
*
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0.
*
******************************************************************************/
//! # Lock Module
//!
//! Provides synchronous and asynchronous lock abstractions along
//! with their implementations. This module offers unified interfaces
//! for different types of locks through traits, making it easier to
//! write generic code that works with multiple lock types.
//!
// 子模块 `lock` 存放同步锁 trait `Lock`,与父模块同名是刻意分层;避免 clippy::module_inception 误报
// Trait definitions
// Implementations
// Re-export traits
// Re-export implementations
pub use crate;
pub use ArcAsyncMutex;
pub use ArcAsyncRwLock;
pub use ArcMutex;
pub use ArcRwLock;
pub use ArcStdMutex;
pub use AsyncLock;
pub use Lock;
pub use TryLockError;