ForkJoinPool - работа на нескольких ядрах

230
13 ноября 2017, 18:47

ForkJoinPool общий имеет параллельность "кол-во ядер - 1", соответственно если есть 4 ядра, то из 4 запущенных потоков 1 будет чередоваться с остальными в выполнении на ядре. Но почему если я создаю собственный FJP, и задаю ему параллельность равную 4, то все равно те же 4 потока выполняются на 3 ядрах? Это я проверил так: запустил объемную задачу для каждого из 2 потоков - в каждом из потоков выполнилась за 3.3 сек, запустил задачу для 3 потоков - те же 3.3 сек для каждого потока, запустил задачу для 4 потоков - все, выполнение в каждом заняло 4-5 сек.
Разве JVM резервирует себе аж одно ядро на GC и т д?

READ ALSO
Помогите разобраться с реверсом байт

Помогите разобраться с реверсом байт

Задание: Реализуйте функцию Reverse, которая на вход принимает массив байт, выполняет битовый реверс каждого байта в массиве и выводит результат...

307
значение по умолчанию в списке thymeleaf

значение по умолчанию в списке thymeleaf

есть столбец таблицы который выводит список возможных статусов проекта

255
Зацикливание WF приложения [требует правки]

Зацикливание WF приложения [требует правки]

Проблема в том, что строчка "Main Main = new Main();" вызывает зацикливание программы, смотрел через отладкуМожно было бы просто убрать ее, но если убрать,...

263
Xamarin chart(график)

Xamarin chart(график)

Необходимо отобразить графикНапример как выглядит график синуса

270