Struct futures_cpupool::Builder
source · [−]pub struct Builder { /* private fields */ }
Expand description
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()
.
Implementations
sourceimpl Builder
impl Builder
sourcepub fn new() -> Builder
pub fn new() -> Builder
Create a builder a number of workers equal to the number of CPUs on the host.
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 CpuPool
The size of a thread pool is the number of worker threads spawned
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.
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 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.
sourcepub fn after_start<F>(&mut self, f: F) -> &mut Self where
F: Fn() + Send + Sync + 'static,
pub fn after_start<F>(&mut self, f: F) -> &mut Self where
F: Fn() + Send + Sync + 'static,
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.
sourcepub fn before_stop<F>(&mut self, f: F) -> &mut Self where
F: Fn() + Send + Sync + 'static,
pub fn before_stop<F>(&mut self, f: F) -> &mut Self where
F: Fn() + Send + Sync + 'static,
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.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl !UnwindSafe for Builder
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