
14.05.2010, 17:56
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
параллельная работа потоков на одном ядре - иллюзия - это да.
Но этот термин больше подходит к описанию превдо параллельная.
Для вычислений реально смысла нет. Но есть смыл для блокируемых операций. А в блокируемым операциям зачастую относятся паузы, всякого рода синхронизация объектов, ожидание объектов. А так как стандартные сокеты повсеместно юзают блокируемые операции, то тут как раз и появляется смысл в потоках.
Хотя вообще сама MS советую юзать 2 потока на ядро. (в случае пула потоков итд итп)
Это всё связано с тем, что если вдруг обработка инфы на одном из них заглохнет (мож ошибка мож еще чтото), то система продолжить функционирование.
А вот если для расчетов юзать потоки, то тут наоборот будет замедление. потому что
процессорного премени они суммарно получат одинаково почти, но будет задержка при переключении контекстов и планировании самих потоков.
Но в его случае (блокируемые сокеты) тут как раз и есть выход - потоки.
|
|
|