diff --git a/Cargo.lock b/Cargo.lock
index f1320f97d..287affec2 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1204,6 +1204,7 @@ dependencies = [
"log",
"signal-hook 0.3.18",
"tauri",
+ "tokio",
"windows-sys 0.61.2",
]
@@ -7628,7 +7629,7 @@ dependencies = [
[[package]]
name = "tauri-plugin-mihomo"
version = "0.1.1"
-source = "git+https://github.com/clash-verge-rev/tauri-plugin-mihomo#1c2fba06b1e51eefd14b9f96310e75b9cdbf58fa"
+source = "git+https://github.com/clash-verge-rev/tauri-plugin-mihomo#24586eb0721314f88e65460b4ac01933b3376d3c"
dependencies = [
"base64 0.22.1",
"futures-util",
diff --git a/Changelog.md b/Changelog.md
index 0a28b4472..a0798b12c 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -13,6 +13,7 @@
- 仪表盘与托盘状态不同步
- 修复重启或退出应用,关闭系统时无法记忆用户行为
- 彻底修复 macOS 连接页面显示异常
+- windows 端监听关机信号失败
✨ 新增功能
@@ -39,6 +40,7 @@
- 优化托盘菜单当前订阅检测逻辑
- 优化连接页面表格渲染
- 优化链式代理 UI 反馈
+- 优化重启应用的资源清理逻辑
diff --git a/crates/clash-verge-signal/Cargo.toml b/crates/clash-verge-signal/Cargo.toml
index 998d9bd24..2781509f2 100644
--- a/crates/clash-verge-signal/Cargo.toml
+++ b/crates/clash-verge-signal/Cargo.toml
@@ -5,14 +5,15 @@ edition.workspace = true
rust-version.workspace = true
[dependencies]
-tauri = { workspace = true }
clash-verge-logging = { workspace = true }
log = { workspace = true }
+tokio = { workspace = true }
[target.'cfg(unix)'.dependencies]
signal-hook = "0.3.18"
[target.'cfg(windows)'.dependencies]
+tauri = { workspace = true }
windows-sys = { version = "0.61.2", features = [
"Win32_Foundation",
"Win32_Graphics_Gdi",
diff --git a/crates/clash-verge-signal/src/lib.rs b/crates/clash-verge-signal/src/lib.rs
index c30ad02a5..a7b7671bc 100644
--- a/crates/clash-verge-signal/src/lib.rs
+++ b/crates/clash-verge-signal/src/lib.rs
@@ -1,13 +1,32 @@
+use std::sync::OnceLock;
+
+use clash_verge_logging::{Type, logging};
+
#[cfg(unix)]
mod unix;
#[cfg(windows)]
mod windows;
+pub(crate) static RUNTIME: OnceLock