src/share/vm/gc_implementation/g1/satbQueue.hpp

Print this page

        

*** 82,92 **** ObjPtrQueue _shared_satb_queue; // Utility function to support sequential and parallel versions. If // "par" is true, then "worker" is the par thread id; if "false", worker // is ignored. ! bool apply_closure_to_completed_buffer_work(bool par, int worker); #ifdef ASSERT void dump_active_values(JavaThread* first, bool expected_active); #endif // ASSERT --- 82,92 ---- ObjPtrQueue _shared_satb_queue; // Utility function to support sequential and parallel versions. If // "par" is true, then "worker" is the par thread id; if "false", worker // is ignored. ! bool apply_closure_to_completed_buffer_work(bool par, uint worker); #ifdef ASSERT void dump_active_values(JavaThread* first, bool expected_active); #endif // ASSERT
*** 121,140 **** // Apply the registered closure to all entries on each // currently-active buffer and then empty the buffer. It should only // be called serially and at a safepoint. void iterate_closure_all_threads(); // Parallel version of the above. ! void par_iterate_closure_all_threads(int worker); // If there exists some completed buffer, pop it, then apply the // registered closure to all its elements, and return true. If no // completed buffers exist, return false. bool apply_closure_to_completed_buffer() { return apply_closure_to_completed_buffer_work(false, 0); } // Parallel version of the above. ! bool par_apply_closure_to_completed_buffer(int worker) { return apply_closure_to_completed_buffer_work(true, worker); } // Apply the given closure on enqueued and currently-active buffers // respectively. Both methods are read-only, i.e., they do not --- 121,140 ---- // Apply the registered closure to all entries on each // currently-active buffer and then empty the buffer. It should only // be called serially and at a safepoint. void iterate_closure_all_threads(); // Parallel version of the above. ! void par_iterate_closure_all_threads(uint worker); // If there exists some completed buffer, pop it, then apply the // registered closure to all its elements, and return true. If no // completed buffers exist, return false. bool apply_closure_to_completed_buffer() { return apply_closure_to_completed_buffer_work(false, 0); } // Parallel version of the above. ! bool par_apply_closure_to_completed_buffer(uint worker) { return apply_closure_to_completed_buffer_work(true, worker); } // Apply the given closure on enqueued and currently-active buffers // respectively. Both methods are read-only, i.e., they do not