130130//! inter-thread synchronisation mechanism, at the cost of some
131131//! extra memory.
132132//!
133+ //! - [`mpmc`]: Multi-producer, multi-consumer queues, used for
134+ //! message-based communication. Can provide a lightweight
135+ //! inter-thread synchronisation mechanism, at the cost of some
136+ //! extra memory.
137+ //!
133138//! - [`Mutex`]: Mutual Exclusion mechanism, which ensures that at
134139//! most one thread at a time is able to access some data.
135140//!
150155//! [`Arc`]: crate::sync::Arc
151156//! [`Barrier`]: crate::sync::Barrier
152157//! [`Condvar`]: crate::sync::Condvar
158+ //! [`mpmc`]: crate::sync::mpmc
153159//! [`mpsc`]: crate::sync::mpsc
154160//! [`Mutex`]: crate::sync::Mutex
155161//! [`Once`]: crate::sync::Once
@@ -172,6 +178,8 @@ pub use self::barrier::{Barrier, BarrierWaitResult};
172178pub use self :: condvar:: { Condvar , WaitTimeoutResult } ;
173179#[ stable( feature = "lazy_cell" , since = "1.80.0" ) ]
174180pub use self :: lazy_lock:: LazyLock ;
181+ #[ stable( feature = "lazy_cell" , since = "1.80.0" ) ]
182+ pub use self :: lazy_lock:: LazyLock ;
175183#[ unstable( feature = "mapped_lock_guards" , issue = "117108" ) ]
176184pub use self :: mutex:: MappedMutexGuard ;
177185#[ stable( feature = "rust1" , since = "1.0.0" ) ]
@@ -181,21 +189,25 @@ pub use self::mutex::{Mutex, MutexGuard};
181189pub use self :: once:: { Once , OnceState , ONCE_INIT } ;
182190#[ stable( feature = "once_cell" , since = "1.70.0" ) ]
183191pub use self :: once_lock:: OnceLock ;
192+ #[ stable( feature = "once_cell" , since = "1.70.0" ) ]
193+ pub use self :: once_lock:: OnceLock ;
184194#[ stable( feature = "rust1" , since = "1.0.0" ) ]
185195pub use self :: poison:: { LockResult , PoisonError , TryLockError , TryLockResult } ;
186196#[ unstable( feature = "reentrant_lock" , issue = "121440" ) ]
187197pub use self :: reentrant_lock:: { ReentrantLock , ReentrantLockGuard } ;
198+ #[ unstable( feature = "reentrant_lock" , issue = "121440" ) ]
199+ pub use self :: reentrant_lock:: { ReentrantLock , ReentrantLockGuard } ;
188200#[ unstable( feature = "mapped_lock_guards" , issue = "117108" ) ]
189201pub use self :: rwlock:: { MappedRwLockReadGuard , MappedRwLockWriteGuard } ;
190202#[ stable( feature = "rust1" , since = "1.0.0" ) ]
191203pub use self :: rwlock:: { RwLock , RwLockReadGuard , RwLockWriteGuard } ;
192204
193- pub mod mpsc;
205+ #[ unstable( feature = "mpmc_channel" , issue = "125712" ) ]
206+ pub mod mpmc;
194207
195208mod barrier;
196209mod condvar;
197210mod lazy_lock;
198- mod mpmc;
199211mod mutex;
200212pub ( crate ) mod once;
201213mod once_lock;
0 commit comments