Чим фонова робота відрізняється від звичайних довгих завдань?
Фонові процеси не обов'язково надають термінальний сеанс для постійної взаємодії.
Фоновий режим підходить для роботи без постійної взаємодії
Термінальні інструменти можуть запускати відповідні команди як відокремлені фонові процеси. Зазвичай вони повертають відомості про процес, але не є інтерактивними сеансами з повторним введенням та очікуванням. Ідентифікатор процесу не можна використовувати як ідентифікатор сеансу.
Якщо потрібно постійно стежити за виводом і завершенням, Agent має використовувати спосіб виконання, що дозволяє безперервне відстеження.
Спочатку погодьте спосіб визначення завершення
Перед фоновою роботою визначте, де зберігається результат і як перевірити завершення; самого «запущено» недостатньо для підтвердження успіху.
Перед початком попросіть агента вказати місце результату, спосіб перевірки активності та спосіб зупинки поточного процесу. Повернувшись пізніше, зіставте ці відомості з фактичним станом. Раніше повернений ідентифікатор процесу сам собою не підтверджує поточну актуальність.
- Перевірте, чи фонова робота справді потрібна.
- Нехай програма зберігає важливі результати у файли.
- Надалі перевіряйте стан процесу й цілісність файлів.
- Передавайте звіти або вкладення результатів лише після підтвердження завершення.
Межі зупинки та передачі
Не завантажуйте незавершені файли як остаточні результати, поки фоновий процес ще записує їх; виявлений запис також може тимчасово блокувати передачу. Перед зупинкою перевірте, що процес відповідає поточному завданню, щоб не зачепити іншу роботу. Оновлення сторінки чи завершення відповіді моделі не доводить зупинки всіх фонових процесів: перед продовженням перевірте фактичний стан.