Forçando vários threads para usar várias CPUs quando elas estiverem disponíveis

Estou escrevendo um programa em Java que usa muita CPU devido à natureza do que faz. No entanto, muitos deles podem ser executados em paralelo e eu fiz o meu programa multi-threaded. Quando eu o executo, ele só parece usar uma CPU até precisar de mais, então usa outra CPU - existe alguma coisa que eu possa fazer em Java para forçar diferentes threads a rodar em diferentes núcleos / CPUs?

questionAnswers(10)

yourAnswerToTheQuestion