Обработка задач с разными приоритетами в пуле потоков

У меня много входящих приоритетных задач А, Ви C, и я хочу обрабатывать задачи с помощью пула потоков на многоядерном процессоре. 70% ЦП должно использоваться для обработки задач типа A, 20% ЦП для задач типа Bи 10% ЦП для задач типа . ] C' задачи.

Однако, если прибывают только задачи типа C', то 100% ЦП должно быть выделено для них. Если приходят только задачи Bи C, то 66% будут обрабатывать задачу Bи 33% задачу Cи т. д.

. ] Как бы вы реализовали это на Java?

пс: Очередь с приоритетом не будет работать, потому что тогда будут обрабатываться только задачи типа a. Кроме того, назначение приоритетов потокам не будет работать, потому что это не точно.

11
задан Greg Mattes 10 March 2012 в 14:05
поделиться