EVALUATION
Add a TaskQueue subtype with built-in overflow handling, OverflowTaskQueue. Each OverflowTaskQueue includes an overflow stack (GrowableArray) to hold elements that do
not fit in the TaskQueue. OverflowTaskQueue::push() will push to the taskqueue first;
if that fails, the item is pushed onto the overflow stack.
Convert the various TaskQueues and associated overflow stacks used by par scavenge and par compact to instances of OverflowTaskQueue, and remove RegionTaskQueueWithOverflow.
|
EVALUATION
See Description. A class containing both a TaskQueue and overflow stack, RegionTaskQueueWithOverflow, was added in jdk5; however the interface does not allow easy substitution for existing TaskQueues. A subclass of GenericTaskQueue with a few additional methods for accessing the overflow stack would be simpler to adopt.
|