Refactor configuration access to use latest_arc() instead of latest_ref()

- Updated multiple instances in the codebase to replace calls to latest_ref() with latest_arc() for improved performance and memory management.
- This change affects various modules including validate, enhance, feat (backup, clash, config, profile, proxy, window), utils (draft, i18n, init, network, resolve, server).
- Ensured that all references to configuration data are now using the new arc-based approach to enhance concurrency and reduce cloning overhead.

refactor: update imports to explicitly include ClashInfo and Config in command files
This commit is contained in:
Tunglies
2025-11-04 06:06:20 +08:00
parent 48a19f99e2
commit 2287ea5f0b
37 changed files with 533 additions and 331 deletions
+3 -3
View File
@@ -87,11 +87,11 @@ async fn refresh_lightweight_tray_state() {
pub async fn auto_lightweight_boot() -> Result<()> {
let verge_config = Config::verge().await;
let enable_auto = verge_config
.data_mut()
.latest_arc()
.enable_auto_light_weight_mode
.unwrap_or(false);
let is_silent_start = verge_config
.latest_ref()
.latest_arc()
.enable_silent_start
.unwrap_or(false);
@@ -236,7 +236,7 @@ async fn setup_light_weight_timer() -> Result<()> {
let once_by_minutes = Config::verge()
.await
.latest_ref()
.latest_arc()
.auto_light_weight_minutes
.unwrap_or(10);