Hackcat

Jaký je rozdíl mezi spuštěním na pozadí a běžnými dlouhými úlohami?

Procesy na pozadí nemusí nutně poskytovat terminálovou relaci pro nepřetržitou interakci.

Pozadí je vhodné pro úlohy, které zjevně nevyžadují nepřetržitou interakci

Terminálové nástroje mohou spustit použitelné příkazy jako oddělené procesy na pozadí. Obvykle vracejí informace o procesu, ale nejsou ekvivalentní interaktivním relacím, kde můžete opakovaně zadávat a čekat; ID procesu nelze použít jako identifikátor relace.

Pokud potřebujete nepřetržitě sledovat výstup a stav dokončení, Agent by měl použít metodu spuštění, která umožňuje průběžné sledování.

Nejprve se dohodněte, jak určit dokončení

Před zahájením práce na pozadí určete, kam se výstup uloží a jak zkontrolovat dokončení; jinak pouhé „spuštěno“ nedokazuje úspěch úlohy.

Před zahájením úlohy na pozadí můžete požádat agenta, aby určil umístění výstupu, jak zkontrolovat, zda stále běží, a jak zastavit aktuální proces. Při pozdějším návratu porovnejte tyto informace se skutečným stavem; nesuďte aktuální platnost pouze na základě dříve vráceného ID procesu.

  1. Potvrďte, zda je spuštění na pozadí skutečně nutné.
  2. Nechte program uložit důležité výsledky jako soubory.
  3. Následně zkontrolujte stav procesu a integritu souborů.
  4. Dodávejte zprávy nebo přílohy s výsledky až po potvrzení dokončení.

Hranice zastavení a dodání

Nestahujte neúplné soubory jako konečné výsledky, zatímco se na pozadí stále zapisuje; dodání souborů může být také dočasně zablokováno, pokud je detekováno zápis. Pokud je potřeba zastavení, potvrďte, že proces k zastavení odpovídá aktuální úloze, abyste neovlivnili jinou práci. Obnovení stránky nebo dokončení odpovědi modelu by nemělo být považováno za důkaz, že všechny procesy na pozadí byly zastaveny; před pokračováním ověřte skutečný stav.