feat: limit blocking threads to 4, and naming tokio threads

This commit is contained in:
Tunglies 2026-02-05 15:24:23 +08:00
parent 781313e8f0
commit b441f4b643
No known key found for this signature in database
GPG Key ID: B9B01B389469B3E8
2 changed files with 20 additions and 0 deletions

View File

@ -10,6 +10,7 @@ mod feat;
mod module;
mod process;
pub mod utils;
use crate::constants::files;
use crate::{
core::handle,

View File

@ -1,5 +1,24 @@
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
use std::sync::atomic::{AtomicUsize, Ordering};
fn main() {
#[allow(clippy::unwrap_used)]
let tokio_runtime = tokio::runtime::Builder::new_multi_thread()
// TODO: limit the number of worker threads
// .worker_threads(4)
.max_blocking_threads(4)
.enable_all()
.thread_name_fn(|| {
static ATOMIC_ID: AtomicUsize = AtomicUsize::new(0);
let id = ATOMIC_ID.fetch_add(1, Ordering::SeqCst);
format!("clash-verge-runtime-{id}")
})
.build()
.unwrap();
let tokio_handle = tokio_runtime.handle();
tauri::async_runtime::set(tokio_handle.clone());
#[cfg(feature = "tokio-trace")]
console_subscriber::init();