From e56fcbcd9959f3bbc0ff2c3f796dedc72c28c865 Mon Sep 17 00:00:00 2001 From: Steve Klabnik Date: Sun, 8 Mar 2015 09:15:06 -0400 Subject: Remove reference to NoSend in concurrency chapter of the book Fixes #23052 --- src/doc/trpl/concurrency.md | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/src/doc/trpl/concurrency.md b/src/doc/trpl/concurrency.md index 842957bd601..9b6d6ca67f6 100644 --- a/src/doc/trpl/concurrency.md +++ b/src/doc/trpl/concurrency.md @@ -223,15 +223,8 @@ method which has this signature: fn lock(&self) -> LockResult> ``` -If we [look at the code for MutexGuard](https://github.com/rust-lang/rust/blob/ca4b9674c26c1de07a2042cb68e6a062d7184cef/src/libstd/sync/mutex.rs#L172), we'll see -this: - -```ignore -__marker: marker::NoSend, -``` - -Because our guard is `NoSend`, it's not `Send`. Which means we can't actually -transfer the guard across thread boundaries, which gives us our error. +Because `Send` is not implemented for `MutexGuard`, we can't transfer the +guard across thread boundaries, which gives us our error. We can use `Arc` to fix this. Here's the working version: -- cgit 1.4.1-3-g733a5