Показать сообщение отдельно

  #7  
Старый 14.05.2010, 17:56
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

параллельная работа потоков на одном ядре - иллюзия - это да.
Но этот термин больше подходит к описанию превдо параллельная.

Для вычислений реально смысла нет. Но есть смыл для блокируемых операций. А в блокируемым операциям зачастую относятся паузы, всякого рода синхронизация объектов, ожидание объектов. А так как стандартные сокеты повсеместно юзают блокируемые операции, то тут как раз и появляется смысл в потоках.
Хотя вообще сама MS советую юзать 2 потока на ядро. (в случае пула потоков итд итп)
Это всё связано с тем, что если вдруг обработка инфы на одном из них заглохнет (мож ошибка мож еще чтото), то система продолжить функционирование.

А вот если для расчетов юзать потоки, то тут наоборот будет замедление. потому что
процессорного премени они суммарно получат одинаково почти, но будет задержка при переключении контекстов и планировании самих потоков.

Но в его случае (блокируемые сокеты) тут как раз и есть выход - потоки.
 
Ответить с цитированием