Koja je razlika između pozadinskog rada i običnih dugih zadataka?
Pozadinski procesi ne nužno pružaju terminalnu sesiju za kontinuiranu interakciju.
Pozadina je prikladna za zadatke koji očito ne zahtijevaju kontinuiranu interakciju
Alati za terminal mogu pokrenuti primjenjive naredbe kao odvojene pozadinske procese. Oni obično vraćaju informacije o procesu, ali nisu ekvivalentni interaktivnim sesijama gdje možete ponavljati unos i čekati; identifikator procesa ne može se koristiti kao identifikator sesije.
Ako trebate kontinuirano pregledavati izlaz i status dovršetka, Agent bi trebao koristiti metodu izvršavanja koja omogućuje stalno praćenje.
Prvo se dogovorite o načinu utvrđivanja dovršetka
Prije pokretanja pozadinskog rada, navedite gdje se izlaz sprema i kako provjeriti dovršetak; inače, samo reći "pokrenuto" ne dokazuje da je zadatak bio uspješan.
Prije početka pozadinskog zadatka, možete zatražiti od agenta da navede lokaciju izlaza, kako provjeriti je li još uvijek u tijeku i kako zaustaviti trenutni proces. Kada se kasnije vratite, uskladite te informacije sa stvarnim statusom; nemojte suditi o trenutnoj valjanosti isključivo na temelju prethodno vraćenog identifikatora procesa.
- Potvrdite je li pozadinski rad zaista potreban.
- Neka program spremi važne rezultate kao datoteke.
- Naknadno provjerite status procesa i integritet datoteka.
- Dostavite izvješća ili privitke s rezultatima tek nakon potvrde dovršetka.
Granice zaustavljanja i isporuke
Nemojte preuzimati nepotpune datoteke kao konačne rezultate dok pozadina još piše; isporuka datoteka također može biti privremeno blokirana ako se otkrije pisanje. Kada je potrebno zaustavljanje, potvrdite da se proces zaustavljanja podudara s trenutnim zadatkom kako biste izbjegli utjecaj na drugi rad. Osvježavanje stranice ili dovršetak odgovora modela ne smiju se smatrati dokazom da su svi pozadinski procesi zaustavljeni; provjerite stvarni status prije nastavka.