В найстройках задания есть такой параметр как приоритет - на что он влияет? пока я не увидел разницу межну заданием с максимальным и минимальным приоритетом. Я думал это работает примерно так (хочется такую логику работы): 1. Предположим, что максимальное активное число задний - 1 2. Добавлением задание в очередь с самым низким приоритетом (LOW) - оно начивается выполняться. 3. Добавляем другое задание в очередь, но уже с высоким приоритетом (HIGH), и вот тут по идеи должно происходить следующее: задание, которое до это выполнялось с низким приоритеом - уходит в waiting (т.е. ставится на паузу), и начинает выполняться новое задание с высоким приоритетом. Такая схема, например, позволит более стабильно реализовать запуск заданий по рассписанию, когда нужно, чтобы задание запускалось строго раз в определенное время и ему не мешали задания, которые могут висеть и выполняться несколько дней подряд.
Цитата из Документации (https://a-parser.com/wiki/add-task/#Опции): Описание логики работы Динамического лимита: https://a-parser.com/threads/2726/
Спасибо за инфу! У меня версия 1.2.253, и если в настройках максимальное число активных заданий = 1, то алгоритм с приоритетами не работает. т.е запускается задание с низким приоритетом, работает, потом добавляется еще одно задание но с высоким приоритетом и ждет (wait slot), не запускается...
Приоритеты работают только с Динамическим лимитом потоков, который в свою очередь работает в рамках Максимума активных заданий. Другими словами, переход потоков от задания с низким приоритетом к заданию с более высоким осуществляется только между работающими (состояние work) заданиями. При этом те, которые ожидают рабочий слот, - не будут получать потоки, даже если у них более высокий приоритет. Решение - увеличить Максимум активных заданий.