Изменения документа Примеры
Редактировал(а) Alexandr Fokin 2026/08/26 19:05
От версии 8.46
отредактировано Alexandr Fokin
на 2026/08/18 12:23
на 2026/08/18 12:23
Изменить комментарий:
К данной версии нет комментариев
К версии 8.43
отредактировано Alexandr Fokin
на 2026/08/11 14:52
на 2026/08/11 14:52
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,10 +4,5 @@ 1 -{{toc/}} 2 - 3 - 4 4 | |(% style="width:188px" %)**Пример задачи**|(% style="width:1268px" %)**Наборы решений** 5 -|1|(% style="width:188px" %)((( 6 -=== 1 родительский процесс и N дочерних процессов. === 7 -)))|(% style="width:1268px" %)((( 2 +|1|(% style="width:188px" %)1 родительский процесс и N дочерних процессов.|(% style="width:1268px" %)((( 8 8 |В данном примере имеется в виду, что дочерние процессы могут выполняться параллельно другу и независимо друг от друга, но в конце должны оповестить родительский процесс о необходимости продолжения обработки. 9 9 Если речь идет о каких-либо зависимостях порядка выполнения в дочерних процессах, то это может контролировать дочерний процесс (выделяя группу, которую сейчас можно запустить и ожидая окончания). 10 10 |((( ... ... @@ -143,28 +143,15 @@ 143 143 |(% style="width:94px" %)Описание|(% style="width:1156px" %)Есть поток заявок на деталь (создание детали требует ресурсов, 1 станок, время). 144 144 Есть N станков. Опционально: у станка есть уровень ресурсов и коэффициент скорости работы. 145 145 Реализация системы распределения и обработки. 146 -|(% style="width:94px" %)Вариант 1|(% style="width:1156px" %)((( 147 -| |Планирование без очереди к станку. 148 -| |((( 149 -* У процесса планировщика есть 150 -** StreamTrigger на поток заявок. 151 -(Можно использовать расширение SignalCode, чтобы временно игнорировать откладывать этот сигнал пока все слоты станков заняты). 152 -** StreanTrigger на поток сигналов об освобождении слота станка. 153 -))) 154 -| |Процесс планировщик назначает заявку на свободный станок. 155 -Вопрос наиболее эффективной функции выбора (оценка наибольшее количество ресурсов, наилучшая скорость обработки и др.). 141 +|(% style="width:94px" %)Вариант 1|(% style="width:1156px" %)Планирование без очереди к станку. 142 +(У процесса планировщика есть StreamTrigger на поток заявок, StreanTrigger на поток сигналов об освобождении слота станка). 143 +Процесс планировщик назначает заявку на свободный станок. Возможен учет дополнительных критериев (наибольшее количество ресурсов, наилучшая скорость обработки). 156 156 Когда все станки заняты планировщик ожидает освобождения станков. 145 +|(% style="width:94px" %)Вариант 2|(% style="width:1156px" %)Планировщик с очередью к станку. 146 +(У процесса станка есть StreamTrigger, на который планировщик подает сигнал в добавления задачи в его очередь). 147 +(У процесса планировщика есть StreamTrigger на поток заявок). 148 +При поступлении заявки процесс планировщик сразу назначает в очередь на какой либо станок на основании оценки (размера очереди, достаточности у станка ресурсов для ее обработки, количества ресурсов, скорости работы станка). 157 157 ))) 158 -|(% style="width:94px" %)Вариант 2|(% style="width:1156px" %)((( 159 -| |Планировщик с очередью к станку. 160 -| |((( 161 -* У процесса станка есть StreamTrigger, на который планировщик подает сигнал в добавления задачи в его очередь. 162 -* У процесса планировщика есть StreamTrigger на поток заявок. 163 -))) 164 -| |При поступлении заявки процесс планировщик сразу назначает в очередь на какой либо станок. 165 -Вопрос наиболее эффективной функции выбора (оценка размера очереди, достаточности у станка ресурсов для ее обработки, общего количества ресурсов, скорости работы станка и др.). 166 -))) 167 -))) 168 168 169 169 ---- 170 170