22 lines
818 B
Rust
22 lines
818 B
Rust
|
use nix::unistd::gettid;
|
||
|
use std::thread;
|
||
|
|
||
|
// use rtkit_client_rs::::RTKitProxyBlocking;
|
||
|
use rtkit_client_rs::{make_current_thread_realtime, Error};
|
||
|
|
||
|
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 = make_current_thread_realtime(Some(requested_priority));
|
||
|
match actual_priority {
|
||
|
Ok(actual_priority) => println!("Requested priority: {}, Actual priority: {}", requested_priority, actual_priority),
|
||
|
Err(Error::PermissionDenied) => println!("Permission denied. Do you have polkit rules set up, or otherwise have the necessary permissions?"),
|
||
|
Err(e) => println!("Internal zbus error: {}", e),
|
||
|
}
|
||
|
}
|