آثار درطول عمر خود دستخوش یک سری تغییرات State میشوند.
وضعیتهای کاری یکباره
برای
one-time
درخواست کار، کار شما در حالت
ENQUEUED شروع میشود.
در وضعیت ENQUEUED، کار شما بهمحض برآورده شدن الزامات
Constraints و زمانبندی تأخیر اولیه،
واجدشرایط اجرا است. از آنجا به وضعیت
RUNNING میرود و سپس
بسته به نتیجه کار ممکن است به
SUCCEEDED،
FAILED، یا احتمالاً به
ENQUEUED برگردد اگر نتیجه
retry باشد. در هر مرحلهای از فرایند، کار میتواند لغو شود و در اینصورت به حالت CANCELLED منتقل میشود.
شکل ۱ عمر کار یکباره را با رویدادهایی که ممکن است آن را به وضعیت دیگری ببرد نشان میدهد.

شکل ۱. نمودار وضعیت برای کار یکباره.
SUCCEEDED، FAILED، و CANCELLED همگی نشاندهنده وضعیت نهایی برای این
کار هستند. اگر کارتان در هریک از این ایالتها باشد،
WorkInfo.State.isFinished()
مقدار «درست» را برمیگرداند.
وضعیتهای کار دورهای
وضعیتهای موفق و ناموفق فقط برای کارهای یکباره و
زنجیرهای اعمال میشود.
برای کار دورهای،
فقط یک وضعیت پایانی وجود دارد، CANCELLED. دلیلش این است که کار دورهای
هرگز تمام نمیشود. پساز هر اجرا، صرفنظر از نتیجه، دوباره زمانبندی میشود. شکل
۲ نمودار حالت فشرده را برای کار دورهای نشان میدهد.

شکل ۲. نمودار وضعیت برای کار دورهای.
وضعیت مسدودشده
یک وضعیت نهایی وجود دارد که هنوز به آن اشاره نکردهایم و آن BLOCKED است. این
وضعیت برای کارهایی اعمال میشود که بهصورت مجموعهای یا زنجیرهای از کارها سازماندهی شدهاند. زنجیرههای
کاری و نمودار وضعیت آنها در
زنجیرهسازی کار پوشش داده شده است.
مراحل بعدی
در مدیریت کار، درباره نحوه مدیریت و نظارت بر پیشرفت کارتان بیشتر خواهید آموخت.