Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
8249004f
R
Rust
项目概览
int
/
Rust
大约 1 年 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rust
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
8249004f
编写于
10月 05, 2017
作者:
K
kennytm
提交者:
GitHub
10月 05, 2017
浏览文件
操作
浏览文件
下载
差异文件
Rollup merge of #45017 - GuillaumeGomez:mutex-links, r=estebank
Add missing urls for Mutex r? @rust-lang/docs
上级
71fba531
e1df72fd
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
7 deletion
+17
-7
src/libstd/sync/mutex.rs
src/libstd/sync/mutex.rs
+17
-7
未找到文件。
src/libstd/sync/mutex.rs
浏览文件 @
8249004f
...
...
@@ -19,10 +19,10 @@
/// A mutual exclusion primitive useful for protecting shared data
///
/// This mutex will block threads waiting for the lock to become available. The
/// mutex can also be statically initialized or created via a
`new`
/// mutex can also be statically initialized or created via a
[`new`]
/// constructor. Each mutex has a type parameter which represents the data that
/// it is protecting. The data can only be accessed through the RAII guards
/// returned from
`lock` and `try_lock`
, which guarantees that the data is only
/// returned from
[`lock`] and [`try_lock`]
, which guarantees that the data is only
/// ever accessed when the mutex is locked.
///
/// # Poisoning
...
...
@@ -33,16 +33,24 @@
/// data by default as it is likely tainted (some invariant is not being
/// upheld).
///
/// For a mutex, this means that the
`lock` and `try_lock`
methods return a
///
`Result`
which indicates whether a mutex has been poisoned or not. Most
/// usage of a mutex will simply
`unwrap()`
these results, propagating panics
/// For a mutex, this means that the
[`lock`] and [`try_lock`]
methods return a
///
[`Result`]
which indicates whether a mutex has been poisoned or not. Most
/// usage of a mutex will simply
[`unwrap()`]
these results, propagating panics
/// among threads to ensure that a possibly invalid invariant is not witnessed.
///
/// A poisoned mutex, however, does not prevent all access to the underlying
/// data. The
`PoisonError` type has an `into_inner`
method which will return
/// data. The
[`PoisonError`] type has an [`into_inner`]
method which will return
/// the guard that would have otherwise been returned on a successful lock. This
/// allows access to the data, despite the lock being poisoned.
///
/// [`new`]: #method.new
/// [`lock`]: #method.lock
/// [`try_lock`]: #method.try_lock
/// [`Result`]: ../../std/result/enum.Result.html
/// [`unwrap()`]: ../../std/result/enum.Result.html#method.unwrap
/// [`PoisonError`]: ../../std/sync/struct.PoisonError.html
/// [`into_inner`]: ../../std/sync/struct.PoisonError.html#method.into_inner
///
/// # Examples
///
/// ```
...
...
@@ -226,7 +234,7 @@ pub fn lock(&self) -> LockResult<MutexGuard<T>> {
/// Attempts to acquire this lock.
///
/// If the lock could not be acquired at this time, then
`Err`
is returned.
/// If the lock could not be acquired at this time, then
[`Err`]
is returned.
/// Otherwise, an RAII guard is returned. The lock will be unlocked when the
/// guard is dropped.
///
...
...
@@ -238,6 +246,8 @@ pub fn lock(&self) -> LockResult<MutexGuard<T>> {
/// this call will return failure if the mutex would otherwise be
/// acquired.
///
/// [`Err`]: ../../std/result/enum.Result.html#variant.Err
///
/// # Examples
///
/// ```
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录