Мне нужно создать систему рабочих (представленных в виде потоков) и (несколько) очередей. Отдельные задания ждут в одной из очередей и ждут, когда рабочий поток обработает их. Каждый рабочий может обрабатывать задания только из некоторых очередей. Нет ожидания ожидания. C/C++, pthreads, стандартный POSIX.C++ - потоки и несколько очередей
Проблема для меня - вещь с несколькими очередями. Я знаю, как реализовать это с помощью одной очереди. Рабочим нужно ждать на всех очередях, которые они могут обрабатывать (дождаться ЛЮБОГО из них).
В Windows я бы использовал WaitForMultipleObjects, но это должно быть многоплатформенным.
Мне не нужен какой-либо конкретный код для этого, только подсказка или описание модели, которую я должен использовать. Заранее спасибо.
Можете ли вы использовать boost на всех? – PiNoYBoY82