Аппаратная нить против мягких нитей? - PullRequest
7 голосов
/ 08 апреля 2011

Я читал, что в многоядерном процессоре каждое ядро ​​содержит 2 аппаратных потока, например, в двухъядерном процессоре запущено 4 аппаратных потока. Теперь, если я создаю 2 потока в Java, будут ли эти потоки отображаться с 2 аппаратными потоками, или эти 2 потока Java выполняются одним аппаратным потоком конкретного ядра?

1 Ответ

3 голосов
/ 08 апреля 2011

Это зависит от многих вещей, однако 2 аппаратных потока на ядро, на которые вы ссылаетесь, - это технология Intel HyperThreading. Эта технология позволяет центральному процессору иметь два потоковых контекста в памяти и выполнять их одновременно, совместно используя ресурсы выполнения.

Какие потоки работают в зависимости от реализации ОС и в основном разрешаются алгоритмом планировщика потоков вашей ОС.

...