Files
rtkit-client-rs/examples/make_realtime/main.rs
h7x4 177a9cbcff
Some checks failed
Build and test / docs (push) Has been cancelled
Build and test / build (push) Has been cancelled
Build and test / check (push) Has been cancelled
Improve example
2026-01-02 22:35:34 +09:00

40 lines
1.2 KiB
Rust

use nix::unistd::gettid;
use std::thread;
use rtkit_client_rs::{set_current_thread_nice_level, set_current_thread_priority};
fn main() {
println!("Main tid: {}", gettid());
thread::spawn(important_thread).join().unwrap();
}
fn important_thread() {
println!("Important thread tid: {}", gettid());
let requested_priority = 40;
let actual_priority = set_current_thread_priority(Some(requested_priority.try_into().unwrap()));
match actual_priority {
Ok(actual_priority) => println!(
"Requested priority: {requested_priority}, Actual priority: {}",
actual_priority.value(),
),
Err(err) => {
eprintln!("Failed to set priority: {}", err);
}
}
let requested_nice_level = -10;
let actual_nice_level = set_current_thread_nice_level(Some(
requested_nice_level.try_into().unwrap(),
));
match actual_nice_level {
Ok(actual_nice_level) => println!(
"Requested nice level: {requested_nice_level}, Actual nice level: {}",
actual_nice_level.value(),
),
Err(err) => {
eprintln!("Failed to set nice level: {}", err);
}
}
}