Skip to content

Commit

Permalink
Rollup merge of rust-lang#35239 - dns2utf8:doc_park_timeout, r=stevek…
Browse files Browse the repository at this point in the history
…labnik

Doc `std::thread::park_timeout`

r? @steveklabnik
  • Loading branch information
steveklabnik committed Aug 4, 2016
2 parents 46f4682 + 20721a4 commit 540451f
Showing 1 changed file with 25 additions and 1 deletion.
26 changes: 25 additions & 1 deletion src/libstd/thread/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -447,6 +447,8 @@ pub fn park() {
*guard = false;
}

/// Use [park_timeout].
///
/// Blocks unless or until the current thread's token is made available or
/// the specified duration has been reached (may wake spuriously).
///
Expand All @@ -456,7 +458,10 @@ pub fn park() {
/// preemption or platform differences that may not cause the maximum
/// amount of time waited to be precisely `ms` long.
///
/// See the module doc for more detail.
/// See the [module documentation][thread] for more detail.
///
/// [thread]: index.html
/// [park_timeout]: fn.park_timeout.html
#[stable(feature = "rust1", since = "1.0.0")]
#[rustc_deprecated(since = "1.6.0", reason = "replaced by `std::thread::park_timeout`")]
pub fn park_timeout_ms(ms: u32) {
Expand All @@ -478,6 +483,25 @@ pub fn park_timeout_ms(ms: u32) {
///
/// Platforms which do not support nanosecond precision for sleeping will have
/// `dur` rounded up to the nearest granularity of time they can sleep for.
///
/// # Example
///
/// Waiting for the complete expiration of the timeout:
///
/// ```rust,no_run
/// use std::thread::park_timeout;
/// use std::time::{Instant, Duration};
///
/// let timeout = Duration::from_secs(2);
/// let beginning_park = Instant::now();
/// park_timeout(timeout);
///
/// while beginning_park.elapsed() < timeout {
/// println!("restarting park_timeout after {:?}", beginning_park.elapsed());
/// let timeout = timeout - beginning_park.elapsed();
/// park_timeout(timeout);
/// }
/// ```
#[stable(feature = "park_timeout", since = "1.4.0")]
pub fn park_timeout(dur: Duration) {
let thread = current();
Expand Down

0 comments on commit 540451f

Please sign in to comment.