[][src]Struct std::sync::mpsc::Select

pub struct Select { /* fields omitted */ }
🔬 This is a nightly-only experimental API. (mpsc_select #27800)

This implementation, while likely sufficient, is unsafe and likely to be error prone. At some point in the future this module will likely be replaced, and it is currently unknown how much API breakage that will cause. The ability to select over a number of channels will remain forever, but no guarantees beyond this are being made

The "receiver set" of the select interface. This structure is used to manage a set of receivers which are being selected over.

Methods

impl Select
[src]

🔬 This is a nightly-only experimental API. (mpsc_select #27800)

This implementation, while likely sufficient, is unsafe and likely to be error prone. At some point in the future this module will likely be replaced, and it is currently unknown how much API breakage that will cause. The ability to select over a number of channels will remain forever, but no guarantees beyond this are being made

Creates a new selection structure. This set is initially empty.

Usage of this struct directly can sometimes be burdensome, and usage is much easier through the select! macro.

Examples

#![feature(mpsc_select)]

use std::sync::mpsc::Select;

let select = Select::new();Run

🔬 This is a nightly-only experimental API. (mpsc_select #27800)

This implementation, while likely sufficient, is unsafe and likely to be error prone. At some point in the future this module will likely be replaced, and it is currently unknown how much API breakage that will cause. The ability to select over a number of channels will remain forever, but no guarantees beyond this are being made

Creates a new handle into this receiver set for a new receiver. Note that this does not add the receiver to the receiver set, for that you must call the add method on the handle itself.

🔬 This is a nightly-only experimental API. (mpsc_select #27800)

This implementation, while likely sufficient, is unsafe and likely to be error prone. At some point in the future this module will likely be replaced, and it is currently unknown how much API breakage that will cause. The ability to select over a number of channels will remain forever, but no guarantees beyond this are being made

Waits for an event on this receiver set. The returned value is not an index, but rather an id. This id can be queried against any active Handle structures (each one has an id method). The handle with the matching id will have some sort of event available on it. The event could either be that data is available or the corresponding channel has been closed.

Trait Implementations

impl Debug for Select
[src]

Formats the value using the given formatter. Read more

impl Drop for Select
[src]

Executes the destructor for this type. Read more

impl !Send for Select
[src]

Auto Trait Implementations

impl !Sync for Select

Blanket Implementations

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from #33417)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from #33417)

Performs the conversion.

impl<T> From for T
[src]

Performs the conversion.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from #33417)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from #33417)

Performs the conversion.

impl<T, U> Into for T where
    U: From<T>, 
[src]

Performs the conversion.

impl<T> Borrow for T where
    T: ?Sized
[src]

Important traits for &'_ mut I

Immutably borrows from an owned value. Read more

impl<T> BorrowMut for T where
    T: ?Sized
[src]

Important traits for &'_ mut I

Mutably borrows from an owned value. Read more

impl<T> Any for T where
    T: 'static + ?Sized
[src]

🔬 This is a nightly-only experimental API. (get_type_id #27745)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more