about summary refs log tree commit diff
path: root/src/libstd/sync/mod.rs
AgeCommit message (Collapse)AuthorLines
2014-05-19std: Remove UnsafeArcAlex Crichton-1/+0
This type has been superseded by Arc<Unsafe<T>>. The UnsafeArc type is a relic of an era that has long since past, and with the introduction of liballoc the standard library is able to use the Arc smart pointer. With little need left for UnsafeArc, it was removed. All existing code using UnsafeArc should either be reevaluated to whether it can use only Arc, or it should transition to Arc<Unsafe<T>> [breaking-change]
2014-03-23Register new snapshotsFlavio Percoco-4/+0
2014-03-20std: Make atomics immutable. #11583Brian Anderson-0/+4
In Rust, the strongest guarantee that `&mut` provides is that the memory pointed to is *not aliased*, whereas `&`'s guarantees are much weaker: that the value can be aliased, and may be mutated under proper precautions (interior mutability). Our atomics though use `&mut` for mutation even while creating multiple aliases, so this changes them to use 'interior mutability', mutating through immutable references.
2013-12-24std: Introduce std::syncAlex Crichton-0/+23
For now, this moves the following modules to std::sync * UnsafeArc (also removed unwrap method) * mpsc_queue * spsc_queue * atomics * mpmc_bounded_queue * deque We may want to remove some of the queues, but for now this moves things out of std::rt into std::sync