CRR (XS): 7098085: G1: partially-young GCs not initiated under certain circumstances
bengt.rutisson at oracle.com
Wed Oct 5 23:28:59 PDT 2011
Looks good to me. Thanks for adding the extra comments in
ConcurrentMarkThread::run(). They will be very useful when getting back
to this code.
Some comments on the email discussion inline...
On 2011-10-06 02:52, Tony Printezis wrote:
> On 10/5/2011 8:27 PM, Tony Printezis wrote:
>>>  you will have to invent a suitable other name, perhaps
>>> for when you do the reverse, i.e. perform an action outside of the
>>> _sts, as happens
>>> when you are doing those synch barriers amongst the concurrent marking
>>> threads in case of overflow and restart.
>> I can't think of a good name off-hand but I'll think about it for a
>> bit... (suggestions are welcome!)
> How about JoinSuspendibleThreadSet / LeaveSuspendibleThreadSet, example:
I like JoinSuspendibleThreadSet. It seems natural. I understand where
LeaveSuspendibleThreadSet is coming from, but just seeing it by itself
on a code line will give me the wrong impression - I think. It sounds so
active, whereas I assume it will have to include some potential waiting
for other threads to leave a safe point, right?
> JoinSuspendibleThreadSet x;
> Both sound very descriptive to me. Alternatively, maybe
> InsideSuspendibleThreadSet / OutsideSuspendibleThreadSet?
I actually like InsideSuspendibleThreadSet / OutsideSuspendibleThreadSet
better. It indicates what you really want to achieve with the code block.
Just my initial thoughts on the naming...
> I'd love to have something like MutexLocker / MutexUnlocker but I
> can't think of an appropriate noun (SuspendibleThreadSetJoiner?!?!?!?
> this sounds SO wrong!).
More information about the hotspot-gc-dev