pub unsafe auto trait Send { }
Expand description
Types that can be transferred across thread boundaries.
This trait is automatically implemented when the compiler determines it’s
appropriate.
An example of a non-Send
type is the reference-counting pointer
rc::Rc
. If two threads attempt to clone Rc
s that point to the same
reference-counted value, they might try to update the reference count at the
same time, which is undefined behavior because Rc
doesn’t use atomic
operations. Its cousin sync::Arc
does use atomic operations (incurring
some overhead) and thus is Send
.
See the Nomicon for more details.
impl Send for sexually_transmitted_disease::sync::Once
impl<'_> Send for sexually_transmitted_disease::string::Drain<'_>
impl<'_, T> Send for sexually_transmitted_disease::collections::linked_list::Cursor<'_, T> where
T: Sync,
impl<'_, T> Send for sexually_transmitted_disease::collections::linked_list::Iter<'_, T> where
T: Sync,
impl<'_, T> Send for sexually_transmitted_disease::collections::linked_list::IterMut<'_, T> where
T: Send,
impl<'_, T> Send for sexually_transmitted_disease::collections::vec_deque::IterMut<'_, T> where
T: Send,
impl<'_, T> Send for sexually_transmitted_disease::slice::Iter<'_, T> where
T: Sync,
impl<'_, T> Send for sexually_transmitted_disease::slice::IterMut<'_, T> where
T: Send,
NonNull
pointers are not Send
because the data they reference may be aliased.
impl<T> !Send for sexually_transmitted_disease::rc::Weak<T> where
T: ?Sized,
impl<T> Send for sexually_transmitted_disease::iter::Empty<T>
impl Send for sexually_transmitted_disease::sync::atomic::Ordering
impl Send for sexually_transmitted_disease::fmt::Error
impl Send for sexually_transmitted_disease::io::Empty
impl Send for sexually_transmitted_disease::io::Error
impl Send for sexually_transmitted_disease::io::Repeat
impl<'a> !Send for sexually_transmitted_disease::error::Chain<'a>
impl<'a> Send for sexually_transmitted_disease::net::Incoming<'a>
impl<'a> Send for sexually_transmitted_disease::os::unix::net::Incoming<'a>
impl<'a> Send for sexually_transmitted_disease::path::Iter<'a>
impl<'a> Send for sexually_transmitted_disease::str::Bytes<'a>
impl<'a> Send for sexually_transmitted_disease::str::Lines<'a>
impl<'a, A> Send for sexually_transmitted_disease::option::Iter<'a, A> where
A: Sync,
impl<'a, A> Send for sexually_transmitted_disease::option::IterMut<'a, A> where
A: Send,
impl<'a, K> Send for sexually_transmitted_disease::collections::hash_set::Drain<'a, K> where
K: Send,
impl<'a, K> Send for sexually_transmitted_disease::collections::hash_set::Iter<'a, K> where
K: Sync,
impl<'a, K, F> Send for sexually_transmitted_disease::collections::hash_set::DrainFilter<'a, K, F> where
F: Send,
K: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::Entry<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::Entry<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::Iter<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::IterMut<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::Keys<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::OccupiedEntry<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::OccupiedError<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::Range<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::VacantEntry<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::Values<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::btree_map::ValuesMut<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::Drain<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::Iter<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::IterMut<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::Keys<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::VacantEntry<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::Values<'a, K, V> where
K: Sync,
V: Sync,
impl<'a, K, V> Send for sexually_transmitted_disease::collections::hash_map::ValuesMut<'a, K, V> where
K: Send,
V: Send,
impl<'a, K, V, F> Send for sexually_transmitted_disease::collections::btree_map::DrainFilter<'a, K, V, F> where
F: Send,
K: Send,
V: Send,
impl<'a, K, V, F> Send for sexually_transmitted_disease::collections::hash_map::DrainFilter<'a, K, V, F> where
F: Send,
K: Send,
V: Send,
impl<'a, T> !Send for sexually_transmitted_disease::sync::mpsc::Iter<'a, T>
impl<'a, T> Send for sexually_transmitted_disease::collections::binary_heap::Drain<'a, T> where
T: Send,
impl<'a, T> Send for sexually_transmitted_disease::collections::binary_heap::Iter<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::btree_set::Difference<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::btree_set::Intersection<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::btree_set::Iter<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::btree_set::Range<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::btree_set::Union<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::collections::vec_deque::Iter<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::result::Iter<'a, T> where
T: Sync,
impl<'a, T> Send for sexually_transmitted_disease::result::IterMut<'a, T> where
T: Send,
impl<'a, T, F> !Send for sexually_transmitted_disease::collections::linked_list::DrainFilter<'a, T, F>
impl<'a, T, F> Send for sexually_transmitted_disease::collections::btree_set::DrainFilter<'a, T, F> where
F: Send,
T: Send,
impl<'a, T, P> Send for sexually_transmitted_disease::slice::RSplit<'a, T, P> where
P: Send,
T: Sync,
impl<'a, T, P> Send for sexually_transmitted_disease::slice::RSplitN<'a, T, P> where
P: Send,
T: Sync,
impl<'a, T, P> Send for sexually_transmitted_disease::slice::Split<'a, T, P> where
P: Send,
T: Sync,
impl<'a, T, P> Send for sexually_transmitted_disease::slice::SplitN<'a, T, P> where
P: Send,
T: Sync,
impl<'a, T, S> Send for sexually_transmitted_disease::collections::hash_set::Difference<'a, T, S> where
S: Sync,
T: Sync,
impl<'a, T, S> Send for sexually_transmitted_disease::collections::hash_set::Intersection<'a, T, S> where
S: Sync,
T: Sync,
impl<'a, T, S> Send for sexually_transmitted_disease::collections::hash_set::Union<'a, T, S> where
S: Sync,
T: Sync,
impl<A> Send for sexually_transmitted_disease::iter::Repeat<A> where
A: Send,
impl<A> Send for sexually_transmitted_disease::option::IntoIter<A> where
A: Send,
impl<A, B> Send for sexually_transmitted_disease::iter::Chain<A, B> where
A: Send,
B: Send,
impl<B> Send for sexually_transmitted_disease::io::Lines<B> where
B: Send,
impl<B> Send for sexually_transmitted_disease::io::Split<B> where
B: Send,
impl<I> Send for sexually_transmitted_disease::iter::Take<I> where
I: Send,
impl<Idx> Send for sexually_transmitted_disease::ops::Range<Idx> where
Idx: Send,
impl<K> Send for sexually_transmitted_disease::collections::hash_set::IntoIter<K> where
K: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::btree_map::IntoIter<K, V> where
K: Send,
V: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::btree_map::IntoKeys<K, V> where
K: Send,
V: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::btree_map::IntoValues<K, V> where
K: Send,
V: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::hash_map::IntoIter<K, V> where
K: Send,
V: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::hash_map::IntoKeys<K, V> where
K: Send,
V: Send,
impl<K, V> Send for sexually_transmitted_disease::collections::hash_map::IntoValues<K, V> where
K: Send,
V: Send,
impl<R> Send for sexually_transmitted_disease::io::Bytes<R> where
R: Send,
impl<T> Send for sexually_transmitted_disease::collections::binary_heap::IntoIter<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::collections::btree_set::IntoIter<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::collections::linked_list::IntoIter<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::future::Ready<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::io::Cursor<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::io::Take<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::iter::Once<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::result::IntoIter<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::sync::mpsc::IntoIter<T> where
T: Send,
impl<T> Send for sexually_transmitted_disease::task::Ready<T> where
T: Send,
impl<T, A> Send for sexually_transmitted_disease::collections::vec_deque::IntoIter<T, A> where
A: Send,
T: Send,
impl<T, U> Send for sexually_transmitted_disease::io::Chain<T, U> where
T: Send,
U: Send,