

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 任務停滯在 `RUNNABLE` 狀態
<a name="sm_job_stuck_in_runnable"></a>

如果 AWS Batch 偵測到您的`RUNNABLE`任務封鎖了佇列的前端，您會收到[服務任務佇列封鎖事件](batch-service-job-queue-blocked-events.md)來自 的 並說明原因。相同的原因也會更新為 `statusReason` `[ListServiceJobs](https://docs.aws.amazon.com/batch/latest/APIReference/API_ListServiceJobs.html)`和 `[DescribeServiceJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_DescribeServiceJob.html)` API 呼叫的一部分。

或者，您可以透過 `[CreateJobQueue](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateJobQueue.html)`和 [https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateJobQueue.html](https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateJobQueue.html) API 動作來設定 `jobStateTimeLimitActions` 參數。`jobStateTimeLimitActions` 參數會指定一組在特定狀態的任務上執行的動作 AWS Batch 。您可以透過 `maxTimeSeconds` 欄位以秒為單位設定時間閾值。

對於連接到`SAGEMAKER_TRAINING`服務環境的任務佇列，您可以搭配 使用的唯一動作`jobStateTimeLimitActions.action`是 `TERMINATE`，這會終止任務。

例如，您可以設定 `jobStateTimeLimitActions` 參數，為 `RUNNABLE` 狀態中等待足夠容量的任何任務等待最多 4 小時。您可以在終止任務之前`reason`將 設定為 `CAPACITY:INSUFFICIENT_INSTANCE_CAPACITY`，並將 `maxTimeSeconds`設定為 14400，並允許下一個任務進入任務佇列的前端。

以下各節說明 AWS Batch 可推斷的不同封鎖原因類型。每個區段都包含：
+ 在 `ListServiceJobs`和 `DescribeServiceJob` API 動作上`statusReason`設定的 。
+ `jobStateTimeLimitActions` 組態`reason`的值。
+ 如果 `jobStateTimeLimitActions`觸發終止，則`statusReason`顯示的 。

**Topics**
+ [`RUNNABLE` 任務因容量而卡在 中](sm_job_stuck_in_runnable_capacity.md)
+ [任務`RUNNABLE`因設定錯誤而卡在 中](sm_job_stuck_in_runnable_misconfiguration.md)
+ [使用 自動修復 `jobStateTimeLimitActions`](sm_job_stuck_in_runnable_time_limit_actions.md)