Struct futures_executor::ThreadPoolBuilder[][src]

pub struct ThreadPoolBuilder { /* fields omitted */ }

Thread pool configuration object.

This type is only available when the thread-pool feature of this library is activated.

Implementations

impl ThreadPoolBuilder[src]

pub fn new() -> Self[src]

Create a default thread pool configuration.

See the other methods on this type for details on the defaults.

pub fn pool_size(&mut self, size: usize) -> &mut Self[src]

Set size of a future ThreadPool

The size of a thread pool is the number of worker threads spawned. By default, this is equal to the number of CPU cores.

Panics

Panics if pool_size == 0.

pub fn stack_size(&mut self, stack_size: usize) -> &mut Self[src]

Set stack size of threads in the pool, in bytes.

By default, worker threads use Rust’s standard stack size.

pub fn name_prefix<S: Into<String>>(&mut self, name_prefix: S) -> &mut Self[src]

Set thread name prefix of a future ThreadPool.

Thread name prefix is used for generating thread names. For example, if prefix is my-pool-, then threads in the pool will get names like my-pool-1 etc.

By default, worker threads are assigned Rust’s standard thread name.

pub fn after_start<F>(&mut self, f: F) -> &mut Self where
    F: Fn(usize) + Send + Sync + 'static, 
[src]

Execute the closure f immediately after each worker thread is started, but before running any tasks on it.

This hook is intended for bookkeeping and monitoring. The closure f will be dropped after the builder is dropped and all worker threads in the pool have executed it.

The closure provided will receive an index corresponding to the worker thread it’s running on.

pub fn before_stop<F>(&mut self, f: F) -> &mut Self where
    F: Fn(usize) + Send + Sync + 'static, 
[src]

Execute closure f just prior to shutting down each worker thread.

This hook is intended for bookkeeping and monitoring. The closure f will be dropped after the builder is droppped and all threads in the pool have executed it.

The closure provided will receive an index corresponding to the worker thread it’s running on.

pub fn create(&mut self) -> Result<ThreadPool, Error>[src]

Create a ThreadPool with the given configuration.

Trait Implementations

impl Debug for ThreadPoolBuilder[src]

impl Default for ThreadPoolBuilder[src]

Auto Trait Implementations

impl !RefUnwindSafe for ThreadPoolBuilder

impl Send for ThreadPoolBuilder

impl Sync for ThreadPoolBuilder

impl Unpin for ThreadPoolBuilder

impl !UnwindSafe for ThreadPoolBuilder

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.