Я настроил ForkJoinPool использовать половину моих процессоров, как это:ForkJoinPool использует больше CPU, чем указано
ForkJoinPool forkJoinPool = new ForkJoinPool(
Runtime.getRuntime().availableProcessors()/2);
Однако, когда я представить работу, такие как сортировка слиянием описано there, пул использует вверх до 80% от моего процессора.
Ожидается ли это? Если да, существует ли способ эффективно ограничить количество рабочих потоков?
Как вы рассчитываете или находите использование «80 +%»? – assylias
Это значение, о котором сообщает мой системный монитор/верх. – avandecreme
В linux по умолчанию верхние значения используют процессор как% от одного CPU, поэтому в вашем случае вы будете использовать 80% одного процессора, а не 80% всех ваших процессоров. – assylias