spawn with realtime rr policy

This commit is contained in:
Alexey Shekhirin
2025-12-12 16:06:07 +00:00
parent a4eacf717a
commit 879da23ea7

View File

@@ -45,7 +45,10 @@ use std::{
}, },
time::Instant, time::Instant,
}; };
use thread_priority::{ThreadBuilderExt, ThreadPriority}; use thread_priority::{
RealtimeThreadSchedulePolicy, ThreadBuilder, ThreadBuilderExt, ThreadPriority,
ThreadSchedulePolicy,
};
use tokio::sync::{ use tokio::sync::{
mpsc::{unbounded_channel, UnboundedReceiver, UnboundedSender}, mpsc::{unbounded_channel, UnboundedReceiver, UnboundedSender},
oneshot::{self, error::TryRecvError}, oneshot::{self, error::TryRecvError},
@@ -410,9 +413,11 @@ where
evm_config, evm_config,
); );
let incoming = task.incoming_tx.clone(); let incoming = task.incoming_tx.clone();
std::thread::Builder::new() ThreadBuilder::default()
.name("Engine Task".to_string()) .name("Engine Task")
.spawn_with_priority(ThreadPriority::Max, |result| { .policy(ThreadSchedulePolicy::Realtime(RealtimeThreadSchedulePolicy::RoundRobin))
.priority(ThreadPriority::Max)
.spawn(|result| {
if let Err(err) = result { if let Err(err) = result {
warn!(target: "engine::tree", ?err, "Failed to set thread priority"); warn!(target: "engine::tree", ?err, "Failed to set thread priority");
} }