builder/
builder.rs

1extern crate poolite;
2use poolite::Builder;
3
4/// `cargo run --example without`
5fn main() {
6    let pool = Builder::new()
7    .min(1)
8    .max(9)
9    .daemon(None) // Close
10    .timeout(None) //Close
11    .name("Worker")
12    .stack_size(1024*1024*2) //2Mib
13    .build()
14    .unwrap();
15
16    for i in 0..38 {
17        pool.push(move || test(i));
18    }
19
20    pool.join(); //wait for the pool
21    println!("{:?}", pool);
22}
23
24fn test(msg: i32) {
25    println!("key: {}\tvalue: {}", msg, fib(msg));
26}
27
28fn fib(msg: i32) -> i32 {
29    match msg {
30        0...2 => 1,
31        x => fib(x - 1) + fib(x - 2),
32    }
33}