1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#![allow(dead_code)]
mod autopool;
mod pid;
mod pool;
mod tracker;
#[cfg(feature = "tuning")]
pub mod tuning;
pub use crate::{
autopool::{AutoPool, AutoPoolConfig},
pid::PidController,
pool::{Job, JobStatus, WorkerPool, WorkerPoolCommand, WorkerPoolConfig},
};
pub(crate) use crossbeam_channel::{
self, Receiver as CrossbeamReceiver, Sender as CrossbeamSender,
};
pub type JobFunction<In, Out, F> = fn(Job<In, Out>) -> F;
pub enum WorkerPoolStatus<Out> {
Ready(Out),
Working,
Done,
}
pub(crate) use tracker::TickWorkTracker;
#[cfg(test)]
mod tests {
#[test]
fn stub_test() {}
}