Skip to main content

meridian_task_core/
lib.rs

1//! Job graph scheduler: worker threads, dependency tracking and work stealing for parallel frame execution.
2
3/// A unit of frame work with declared dependencies (see docs/threading-model.md).
4#[derive(Debug, Clone, Default)]
5pub struct Job {
6    pub name: &'static str,
7}
8
9/// A dependency-ordered set of jobs for one frame.
10#[derive(Debug, Clone, Default)]
11pub struct JobGraph {
12    pub jobs: Vec<Job>,
13}
14
15/// Runs a `JobGraph` across worker threads with work stealing.
16#[derive(Debug)]
17pub struct Scheduler {
18    pub worker_count: usize,
19}