Мне было просто интересно, есть ли какое-нибудь поле, касающееся программирования управления задачами (или, по крайней мере, так я его называю).
Для лучшего объяснения task-control
рассмотрим следующий сценарий:
Приложение (главный поток) ожидает команду - это может быть конкретное действие или набор действий, которые приложение должно выполнить.
Когда команда получена, главный поток создает task
(= порождает независимый поток, который фактически выполняет действие) и добавляет запись в свой список задач - таким образом, отслеживая время выполнения, дескриптор потока , приоритет задачи ... и т. д.
Главный поток ожидает любые другие входящие команды, одновременно заботясь обо всех задачах, например: убивает задачи, выполняющиеся слишком долго, назначает приоритеты задачам с более высоким приоритетом, убивает задачу по запросу другой задачи, ограничивает количество текущих запуск задач, позволяет планировать задачи, очищает завершенные задачи (потоки) и так далее.
Модель очень похожа на то, что мы видим в ОС, имеющей дело с запущенными процессами.
Существуют ли передовые практики по программированию таких моделей задач или в этой области проделана теоретическая работа? Возможно, мой вопрос слишком обобщенный, но, по крайней мере, я хотел знать, есть ли опыт работы с такими моделями или есть лучший подход.
Спасибо за любые ответы.