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