распределение заданий в пуле потоков
От: turbovegan  
Дата: 06.10.11 14:38
Оценка:
Есть ли какие-то средства/алгоритмы для эффективного распределения очереди APC-запросов между потоками? Задача касается сервера, который может обрабатывать клиента до тех пор, пока клиент не захочет отключиться. Или для этого предназначен порт завершения ввода/вывода, а самому через APC это будет сделать сложнее? (эффективность не столь важна)
Re: распределение заданий в пуле потоков
От: DarkTranquillity  
Дата: 07.10.11 07:34
Оценка:
Здравствуйте, turbovegan, Вы писали:

T>Есть ли какие-то средства/алгоритмы для эффективного распределения очереди APC-запросов между потоками? Задача касается сервера, который может обрабатывать клиента до тех пор, пока клиент не захочет отключиться. Или для этого предназначен порт завершения ввода/вывода, а самому через APC это будет сделать сложнее? (эффективность не столь важна)


А чем QueueUserAPC не подходит?
Re[2]: распределение заданий в пуле потоков
От: turbovegan  
Дата: 07.10.11 08:17
Оценка:
Здравствуйте, DarkTranquillity, Вы писали:

DT>Здравствуйте, turbovegan, Вы писали:


T>>Есть ли какие-то средства/алгоритмы для эффективного распределения очереди APC-запросов между потоками? Задача касается сервера, который может обрабатывать клиента до тех пор, пока клиент не захочет отключиться. Или для этого предназначен порт завершения ввода/вывода, а самому через APC это будет сделать сложнее? (эффективность не столь важна)


я хотел просто как-то оправдать себя в отказе от IOCP. вопрос теоретического характера.

DT>А чем QueueUserAPC не подходит?


QueueUserAPC в качестве параметра принимает хендл одного потока. а если у меня их десять, как между ними распределять задания, время выполнения которых — случайная величина?
Re[3]: распределение заданий в пуле потоков
От: ononim  
Дата: 07.10.11 08:42
Оценка:
DT>>А чем QueueUserAPC не подходит?
T>QueueUserAPC в качестве параметра принимает хендл одного потока. а если у меня их десять, как между ними распределять задания, время выполнения которых — случайная величина?
QueueUserWorkitem
Как много веселых ребят, и все делают велосипед...
Re[4]: распределение заданий в пуле потоков
От: DarkTranquillity  
Дата: 07.10.11 09:59
Оценка:
Здравствуйте, ononim, Вы писали:

DT>>>А чем QueueUserAPC не подходит?

T>>QueueUserAPC в качестве параметра принимает хендл одного потока. а если у меня их десять, как между ними распределять задания, время выполнения которых — случайная величина?
O>QueueUserWorkitem

Точно, именно про нее и хотел сказать, просто навскидку вспомнил про первую.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.