taskflow_rs/framework/
metrics.rs

1#[derive(Debug, Clone)]
2pub struct TaskMetrics {
3    pub pending: usize,
4    pub running: usize,
5    pub completed: usize,
6    pub failed: usize,
7    pub cancelled: usize,
8    pub total: usize,
9}
10
11impl TaskMetrics {
12    pub fn success_rate(&self) -> f64 {
13        if self.total == 0 {
14            return 0.0;
15        }
16        self.completed as f64 / (self.completed + self.failed) as f64
17    }
18}