Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Твой алгоритм не соответствует условию ТЗ:
EP>S>>Не должно быть "повисших" клиентов, даже если клиентов больше, чем потоков.
S>>Т.е. поток должен обрабатывать разных клиентов по-очереди, а не одного до завершения всех его задач.
100% соответствие
EP>Возьми простой случай одного рабочего потока — никакого "разных клиентов по-очереди" у тебя нет.
возможно у нас разное понимание "по-очереди". В моём понимании по-очереди — значит в порядке очереди, т.е. в порядке добавления в очередь. А твоё какое?
P.S. Очевидно же что это условие "по-очереди, а не одного до завершения всех его задач" добавлено чтобы оградиться от простого, очевидного, но кривого дизайна, когда заводят по одной очереди на клиента и пул выбирает из этой очереди таски пока она не пуста.
P.P.S.
всё обсуждение в этом треде похоже на
заседание дагестанской академии наук, не хочу никого задеть, но реально, кто из отписывающихся в треде прочёл хоть одну книгу по многопоточному программированию? Вопрос риторический, можно не отвечать.