pub struct Builder { /* private fields */ }
Expand description
Builds an I/O-oriented thread pool (Runtime
) with custom configuration values.
Methods can be chained in order to set the configuration values. The thread pool is constructed
by calling Builder::build
. New instances of Builder
are obtained via
Builder::default
.
See function level documentation for details on the various configuration settings.
Implementations§
Source§impl Builder
impl Builder
Sourcepub fn pool_size(&mut self, val: usize) -> &mut Self
pub fn pool_size(&mut self, val: usize) -> &mut Self
Set the number of worker threads for the thread pool instance.
This must be a number between 1 and 32,768 though it is advised to keep this value on the smaller side.
The default value is the number of cores available to the system.
Sourcepub fn name_prefix<S: Into<String>>(&mut self, val: S) -> &mut Self
pub fn name_prefix<S: Into<String>>(&mut self, val: S) -> &mut Self
Set name prefix of threads spawned by the scheduler
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.
If this configuration is not set, then the thread will use the system default naming scheme.
Sourcepub fn after_start<F>(&mut self, f: F) -> &mut Self
pub fn after_start<F>(&mut self, f: F) -> &mut Self
Execute function f
after each thread is started but before it starts doing work.
This is intended for bookkeeping and monitoring use cases.
Sourcepub fn before_stop<F>(&mut self, f: F) -> &mut Self
pub fn before_stop<F>(&mut self, f: F) -> &mut Self
Execute function f
before each thread stops.
This is intended for bookkeeping and monitoring use cases.