< prev index next >

src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp

Print this page
rev 8331 : 8079579: Add SuspendibleThreadSetLeaver and make SuspendibleThreadSet::joint()/leave() private
Reviewed-by:

*** 1,7 **** /* ! * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 75,85 **** set_active(true); } } void ConcurrentG1RefineThread::sample_young_list_rs_lengths() { ! SuspendibleThreadSetJoiner sts; G1CollectedHeap* g1h = G1CollectedHeap::heap(); G1CollectorPolicy* g1p = g1h->g1_policy(); if (g1p->adaptive_young_list_length()) { int regions_visited = 0; g1h->young_list()->rs_length_sampling_init(); --- 75,85 ---- set_active(true); } } void ConcurrentG1RefineThread::sample_young_list_rs_lengths() { ! SuspendibleThreadSetJoiner sts_join; G1CollectedHeap* g1h = G1CollectedHeap::heap(); G1CollectorPolicy* g1p = g1h->g1_policy(); if (g1p->adaptive_young_list_length()) { int regions_visited = 0; g1h->young_list()->rs_length_sampling_init();
*** 87,98 **** g1h->young_list()->rs_length_sampling_next(); ++regions_visited; // we try to yield every time we visit 10 regions if (regions_visited == 10) { ! if (sts.should_yield()) { ! sts.yield(); // we just abandon the iteration break; } regions_visited = 0; } --- 87,98 ---- g1h->young_list()->rs_length_sampling_next(); ++regions_visited; // we try to yield every time we visit 10 regions if (regions_visited == 10) { ! if (sts_join.should_yield()) { ! sts_join.yield(); // we just abandon the iteration break; } regions_visited = 0; }
*** 186,196 **** if (_should_terminate) { break; } { ! SuspendibleThreadSetJoiner sts; do { int curr_buffer_num = (int)dcqs.completed_buffers_num(); // If the number of the buffers falls down into the yellow zone, // that means that the transition period after the evacuation pause has ended. --- 186,196 ---- if (_should_terminate) { break; } { ! SuspendibleThreadSetJoiner sts_join; do { int curr_buffer_num = (int)dcqs.completed_buffers_num(); // If the number of the buffers falls down into the yellow zone, // that means that the transition period after the evacuation pause has ended.
< prev index next >