8387293: Shenandoah: Improve gc+stats logging for generational mode

Reviewed-by: phh, xpeng
This commit is contained in:
Aleksey Shipilev 2026-06-29 17:00:20 +00:00
parent bc2fa43a64
commit 9d65845a6b
2 changed files with 4 additions and 0 deletions

View File

@ -62,10 +62,12 @@ ShenandoahGenerationalEvacuationTask::ShenandoahGenerationalEvacuationTask(Shena
void ShenandoahGenerationalEvacuationTask::work(uint worker_id) {
if (_concurrent) {
ShenandoahWorkerTimingsTracker timer(ShenandoahPhaseTimings::conc_evac, ShenandoahPhaseTimings::Work, worker_id, true);
ShenandoahConcurrentWorkerSession worker_session(worker_id);
SuspendibleThreadSetJoiner stsj;
do_work();
} else {
ShenandoahWorkerTimingsTracker timer(ShenandoahPhaseTimings::degen_gc_evac, ShenandoahPhaseTimings::Work, worker_id, true);
ShenandoahParallelWorkerSession worker_session(worker_id);
do_work();
}

View File

@ -722,10 +722,12 @@ public:
void work(uint worker_id) override {
if (CONCURRENT) {
ShenandoahWorkerTimingsTracker timer(ShenandoahPhaseTimings::conc_update_refs, ShenandoahPhaseTimings::Work, worker_id, true);
ShenandoahConcurrentWorkerSession worker_session(worker_id);
SuspendibleThreadSetJoiner stsj;
do_work<ShenandoahConcUpdateRefsClosure>(worker_id);
} else {
ShenandoahWorkerTimingsTracker timer(ShenandoahPhaseTimings::degen_gc_update_refs, ShenandoahPhaseTimings::Work, worker_id, true);
ShenandoahParallelWorkerSession worker_session(worker_id);
do_work<ShenandoahNonConcUpdateRefsClosure>(worker_id);
}