JobSys

About

Provides an implementation of a Lockless Work Stealing Job System which, after initialization, does not consume additional memory to schedule jobs.

This crate requires rust edition 2018 and can be run with stable. It has been tested with rust version 1.50.0.

For more details, please consult the crate's documentation

Note: It's recommended to use version 0.2.0 going forward as it fixes many issues in the original release.

Example

```rust use jobsys::{JobSystem, JobScope, JobInstance};

fn main() { let threadcount = 4usize; let jobcapacity = 512usize; let jobsys = JobSystem::new(threadcount, jobcapacity).unwrap(); let jobscope = JobScope::newfromsystem(&jobsys); let jobinstance = JobInstance::create(&jobscope, || { println!("Hello from Job Instance"); }).unwrap(); jobinstance.wait_with(|| println!("Waiting on Job to Finish")).expect("Failed to wait on job"); } ```