Существуют ли решения (и какие) для реализации фонового исполнения задач?
Пишу к системе (похожа на файловый менеджер "FAR", но находится в вебе) - модуль отображающий пользователю статусы запущенной задачи, например такой как: "какой файл от куда и куда копируется", т.е. по сути это фоновое обновление статусов для запущенных задач пользователя.
Работает так: демон берёт из очереди - задачу и начинает её выполнять (допустим копирование файла), демон проходит 4-е этапа выполнения (Новая задача, задача в работе, задача выполнена или задача не выполнена). Все эти этапы я и отображаю в div-е на клиенте в соответствующем представлении с помощью javascript, в частности setTimeout (выполяню ajax-запрос к таблице с задачами для получения текущего статуса задачи).
ПРОБЛЕМА в следующем:
Во время отображения пользователю статусов запущенной задачи, вся страница на клиенте (файловый менеджер) блокируется на время выполнения всего цикла отображения статусов для данной задачи (в данном случае для копирования). Требуется реализовать, чтобы статусы отображались в фоновом режиме и не мешали работе с файловым менеджером (по каталогам походить, ещё копирование
чего-нибудь запустить).
Что посоветуете, есть ли какие-то готовые решения на которых это можно реализовать?
я это понимаю, но было решено начать реализацию с этого варианта, т.к. ещё не приходилось работать с многопоточностью в javascript, а также было запланировано в дальнейшем разработанную реализацию запустить в последствии в фоновом режиме (в итоге так и получилось, что сейчас этот код работает в фоновом режиме)
Вчера задал вопрос и нагуглил про web workers. Начал реализовывать задуманное, всё получается, работает как задумывалось. В общем это именно то что мне нужно.