Цитата Сообщение от Tairo Посмотреть сообщение
alexmdv
Ни разу не программист, но что мешает задать алгоритм, при котором поток А будет становиться на паузу и ничего не делать, ожидая пока из потока Б не поступят данные для обработки? Так же и с потоком Б. Есть нужные для расчетов в данный момент данные из потока А - работаем, нету данных - стоим ждем.
Так не получится.
Попробую другой пример привести.
Вот например процессор в компе работает на частоте пусть будет 1000 МГц. А видеокарта пусть будет работает на частоте 2000 МГц. такое соотношение частот означат, что видеокарта может проверять оперативную память на предмет новых данных в два раза чаще, чем процессор может эти данные приготовить для нее. Вы же не скажете видеокарте -давай ты будешь каждый второй такт выключаться Потому что процесс остановки займет времени в 100 раз больше чем тупо уйти на следующий цикл с пустыми данными.

+ весь смак параллельных вычислений в этом и заключается, что у нас туева хуча данных и стоять ждать нам некогда и мы все разносим по потокам.