Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, cencio, Вы писали:
C>>вы что-то путаете, там только на переключение между потоками куча времени уходить будет. не может она на порядок быстрей быть.
попробуйте передизайнить нормально
А>Спасибо за ссылку.
А>Проблема в том что каждый поток берет данные с одного места (к которому нет доступа и изменить невозможно), обрабатывает их, и ложит в другое место, то место откуда берутся данные отдает их очень медленно для одного потока, если же сделать 2 потока то будет очень бедленно но на каждый поток. Надеюсь понятно обьяснил... вообшем смысл в том что если будет 100 потоков то скорость будет медленная за счет того места откуда берутся данные... поэтому единственный способ ускорить работу программы это увеличение кол-ва потоков.
1-й поток — выгребаитель данных. Берет данные и необработанными закидывает в очередь обработки. Тоесть сделать работу по быстому.
2-й поток — выгребает необработанные данные и раздает их, посредством пула потоков, свободным потокам для обработки.
Пул потоков настроить на максимальное количество процессоров.
Thread Pool