diff --git a/Cargo.toml b/Cargo.toml index 9dfe06ed7..f853095cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,6 +40,11 @@ opt-level = 0 debug = true strip = false +[profile.debug-release] +inherits = "fast-release" +codegen-units = 1 +split-debuginfo = "unpacked" + [workspace.dependencies] clash-verge-draft = { path = "crates/clash-verge-draft" } clash-verge-logging = { path = "crates/clash-verge-logging" } diff --git a/crates/clash-verge-signal/src/lib.rs b/crates/clash-verge-signal/src/lib.rs index 46b559d33..ab8f91b8e 100644 --- a/crates/clash-verge-signal/src/lib.rs +++ b/crates/clash-verge-signal/src/lib.rs @@ -14,18 +14,20 @@ where F: Fn() -> Fut + Send + Sync + 'static, Fut: Future + Send + 'static, { - RUNTIME.get_or_init(|| match tokio::runtime::Runtime::new() { - Ok(rt) => Some(rt), - Err(e) => { - logging!( - info, - Type::SystemSignal, - "register shutdown signal failed, create tokio runtime error: {}", - e - ); - None - } - }); + RUNTIME.get_or_init( + || match tokio::runtime::Builder::new_current_thread().enable_all().build() { + Ok(rt) => Some(rt), + Err(e) => { + logging!( + info, + Type::SystemSignal, + "register shutdown signal failed, create tokio runtime error: {}", + e + ); + None + } + }, + ); #[cfg(unix)] unix::register(f);