У меня много входящих приоритетных задач А
, В
и C
, и я хочу обрабатывать задачи с помощью пула потоков на многоядерном процессоре. 70% ЦП должно использоваться для обработки задач типа A
, 20% ЦП для задач типа B
и 10% ЦП для задач типа . ] C
' задачи.
Однако, если прибывают только задачи типа C
', то 100% ЦП должно быть выделено для них. Если приходят только задачи B
и C
, то 66% будут обрабатывать задачу B
и 33% задачу C
и т. д.
. ] Как бы вы реализовали это на Java?
пс: Очередь с приоритетом не будет работать, потому что тогда будут обрабатываться только задачи типа a. Кроме того, назначение приоритетов потокам не будет работать, потому что это не точно.