From f0da49a54c6e9c47136c27e86cf4ee8d88e362b3 Mon Sep 17 00:00:00 2001 From: pjh456 <147148383@qq.com> Date: Wed, 24 Jun 2026 15:47:35 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20GC=20eprintln!=20=E6=94=B9=E4=B8=BA=20vm?= =?UTF-8?q?=5Fdebug!=EF=BC=8Crelease=20=E4=B8=8B=E9=9B=B6=20stderr?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crates/oxide_vm/src/session_gc.rs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/crates/oxide_vm/src/session_gc.rs b/crates/oxide_vm/src/session_gc.rs index 41d468d9..64b1b1ba 100644 --- a/crates/oxide_vm/src/session_gc.rs +++ b/crates/oxide_vm/src/session_gc.rs @@ -2,6 +2,7 @@ use std::collections::{HashMap, VecDeque}; use std::mem::size_of; use std::time::Instant; +use oxide_kernel::vm_debug; use oxide_types::object::{JsObject, PropMetaEntry}; use oxide_types::value::JsValue; @@ -258,9 +259,15 @@ impl SessionGc { let total_ptrs = survivors + dead; if total_ptrs > 0 { if dead == 0 { - eprintln!("[GC] sweep phase -> no objects collected ({} live, {} dead)", survivors, dead); + vm_debug!("[GC] sweep phase -> no objects collected ({} live, {} dead)", survivors, dead); } else { - eprintln!("[GC] sweep phase: {total_ptrs} scanned, {survivors} live, {dead} dead, {freed_bytes} bytes"); + vm_debug!( + "[GC] sweep phase: {} scanned, {} live, {} dead, {} bytes", + total_ptrs, + survivors, + dead, + freed_bytes + ); } } @@ -293,7 +300,7 @@ impl SessionGc { self.min_collection_duration_us = self.min_collection_duration_us.min(self.last_collection_duration_us); if freed_bytes > 0 || self.total_collections % 100 == 0 { - eprintln!("{}", self.stats_summary()); + vm_debug!("{}", self.stats_summary()); } }