2
0
mirror of https://github.com/chubin/cheat.sheets synced 2024-11-01 21:40:24 +00:00
cheat.sheets/sheets/_rust/threads
2018-10-08 12:12:32 +02:00

28 lines
698 B
Plaintext

// Basic threading
use std::thread;
//
fn main() {
// Spawn a new thread to do some work
let t = thread::spawn(|| {
println!("In a new thread!");
});
// Wait for execution of spawned thread to join back up with main thread
let result = t.join();
// Create a bunch of threads, stored in a Vec
let mut threads = vec![];
for i in 0..10 {
threads.push(thread::spawn(|| {
println!("Doing some work!");
}));
}
// Wait for all of those to finish
for t in threads {
let result = t.join();
}
}
// Check out rayon https://docs.rs/rayon/ for more advanced tools like parallel
// iterators and sort algorithms.