[][src]Struct futures_cpupool::Builder

pub struct Builder { /* fields omitted */ }

Thread pool configuration object

Builder starts with a number of workers equal to the number of CPUs on the host. But you can change it until you call create().

Methods

impl Builder[src]

pub fn new() -> Builder[src]

Create a builder a number of workers equal to the number of CPUs on the host.

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

Set size of a future CpuPool

The size of a thread pool is the number of worker threads spawned

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

Set stack size of threads in the pool.

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

Set thread name prefix of a future CpuPool

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.

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

Execute function f right after each thread is started but before running any jobs on it.

This is initially intended for bookkeeping and monitoring uses. The f will be deconstructed after the builder is deconstructed and all threads in the pool has executed it.

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

Execute function f before each worker thread stops.

This is initially intended for bookkeeping and monitoring uses. The f will be deconstructed after the builder is deconstructed and all threads in the pool has executed it.

pub fn create(&mut self) -> CpuPool[src]

Create CpuPool with configured parameters

Panics

Panics if pool_size == 0.

Trait Implementations

impl Debug for Builder[src]

Auto Trait Implementations

impl Unpin for Builder

impl Sync for Builder

impl Send for Builder

impl !UnwindSafe for Builder

impl !RefUnwindSafe for Builder

Blanket Implementations

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.

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

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

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