Struct futures_executor::ThreadPoolBuilder
source · [−]pub struct ThreadPoolBuilder { /* private fields */ }
Expand description
Thread pool configuration object.
This type is only available when the thread-pool
feature of this
library is activated.
Implementations
sourceimpl ThreadPoolBuilder
impl ThreadPoolBuilder
sourcepub fn new() -> Self
pub fn new() -> Self
Create a default thread pool configuration.
See the other methods on this type for details on the defaults.
sourcepub fn pool_size(&mut self, size: usize) -> &mut Self
pub fn pool_size(&mut self, size: usize) -> &mut Self
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
.
sourcepub fn stack_size(&mut self, stack_size: usize) -> &mut Self
pub fn stack_size(&mut self, stack_size: usize) -> &mut Self
Set stack size of threads in the pool, in bytes.
By default, worker threads use Rust’s standard stack size.
sourcepub fn name_prefix<S: Into<String>>(&mut self, name_prefix: S) -> &mut Self
pub fn name_prefix<S: Into<String>>(&mut self, name_prefix: S) -> &mut Self
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.
sourcepub fn after_start<F>(&mut self, f: F) -> &mut Self where
F: Fn(usize) + Send + Sync + 'static,
pub fn after_start<F>(&mut self, f: F) -> &mut Self where
F: Fn(usize) + Send + Sync + 'static,
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.
sourcepub fn before_stop<F>(&mut self, f: F) -> &mut Self where
F: Fn(usize) + Send + Sync + 'static,
pub fn before_stop<F>(&mut self, f: F) -> &mut Self where
F: Fn(usize) + Send + Sync + 'static,
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 dropped
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.
sourcepub fn create(&mut self) -> Result<ThreadPool, Error>
pub fn create(&mut self) -> Result<ThreadPool, Error>
Create a ThreadPool
with the given configuration.
Trait Implementations
sourceimpl Debug for ThreadPoolBuilder
impl Debug for ThreadPoolBuilder
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more