< prev index next >

src/hotspot/share/gc/g1/g1ConcurrentMark.cpp

Print this page
rev 56881 : imported patch 8233702-function-to-clamp-value-to-range

*** 1609,1619 **** // is not multi-threaded we use the current (VMThread) thread, // otherwise we use the work gang from the G1CollectedHeap and // we utilize all the worker threads we can. bool processing_is_mt = rp->processing_is_mt(); uint active_workers = (processing_is_mt ? _g1h->workers()->active_workers() : 1U); ! active_workers = MAX2(MIN2(active_workers, _max_num_tasks), 1U); // Parallel processing task executor. G1CMRefProcTaskExecutor par_task_executor(_g1h, this, _g1h->workers(), active_workers); AbstractRefProcTaskExecutor* executor = (processing_is_mt ? &par_task_executor : NULL); --- 1609,1619 ---- // is not multi-threaded we use the current (VMThread) thread, // otherwise we use the work gang from the G1CollectedHeap and // we utilize all the worker threads we can. bool processing_is_mt = rp->processing_is_mt(); uint active_workers = (processing_is_mt ? _g1h->workers()->active_workers() : 1U); ! active_workers = clamp(active_workers, 1u, _max_num_tasks); // Parallel processing task executor. G1CMRefProcTaskExecutor par_task_executor(_g1h, this, _g1h->workers(), active_workers); AbstractRefProcTaskExecutor* executor = (processing_is_mt ? &par_task_executor : NULL);
< prev index next >