427 void CardTableModRefBS::non_clean_card_iterate_possibly_parallel(Space* sp, |
427 void CardTableModRefBS::non_clean_card_iterate_possibly_parallel(Space* sp, |
428 MemRegion mr, |
428 MemRegion mr, |
429 OopsInGenClosure* cl, |
429 OopsInGenClosure* cl, |
430 CardTableRS* ct) { |
430 CardTableRS* ct) { |
431 if (!mr.is_empty()) { |
431 if (!mr.is_empty()) { |
432 // Caller (process_strong_roots()) claims that all GC threads |
432 // Caller (process_roots()) claims that all GC threads |
433 // execute this call. With UseDynamicNumberOfGCThreads now all |
433 // execute this call. With UseDynamicNumberOfGCThreads now all |
434 // active GC threads execute this call. The number of active GC |
434 // active GC threads execute this call. The number of active GC |
435 // threads needs to be passed to par_non_clean_card_iterate_work() |
435 // threads needs to be passed to par_non_clean_card_iterate_work() |
436 // to get proper partitioning and termination. |
436 // to get proper partitioning and termination. |
437 // |
437 // |
438 // This is an example of where n_par_threads() is used instead |
438 // This is an example of where n_par_threads() is used instead |
439 // of workers()->active_workers(). n_par_threads can be set to 0 to |
439 // of workers()->active_workers(). n_par_threads can be set to 0 to |
440 // turn off parallelism. For example when this code is called as |
440 // turn off parallelism. For example when this code is called as |
441 // part of verification and SharedHeap::process_strong_roots() is being |
441 // part of verification and SharedHeap::process_roots() is being |
442 // used, then n_par_threads() may have been set to 0. active_workers |
442 // used, then n_par_threads() may have been set to 0. active_workers |
443 // is not overloaded with the meaning that it is a switch to disable |
443 // is not overloaded with the meaning that it is a switch to disable |
444 // parallelism and so keeps the meaning of the number of |
444 // parallelism and so keeps the meaning of the number of |
445 // active gc workers. If parallelism has not been shut off by |
445 // active gc workers. If parallelism has not been shut off by |
446 // setting n_par_threads to 0, then n_par_threads should be |
446 // setting n_par_threads to 0, then n_par_threads should be |