Помогите разобраться с многоядерной обработкой Java-программы.
Правильно ли я понимаю, что при использовании класса Thread и интерфейса Runnable Java-программа будет использовать многопоточность только на одном ядре центрального процессора, при наличии других ядер?
А для реализации многоядерной обработки Java-программы необходимо использовать специализированные Java-классы, например, Fork/Join Framework?
Нет, не правильно. Java уже давно использует нативные нити. А раскидкой по ядрам занимается уже сама операционная система.
Так что, даже при использовании Thread и Runnable ваши нити могут быть разбросаны операционной системой по разным ядрам.
Тут вообще вопрос больше концептуальный. fork - создаёт дочерний процесс, а у него внутри уже свои нити. Следовательно, fork потяжелее будет. Форкать лучше, если вы хотите запустить, по сути, копию задачи.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости