JOBOBJECT_END_OF_JOB_TIME_INFORMATION 構造体 (winnt.h)

ジョブの終了時間制限を超えたときにシステムが実行するアクションを指定します。

構文

typedef struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
  DWORD EndOfJobTimeAction;
} JOBOBJECT_END_OF_JOB_TIME_INFORMATION, *PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;

メンバー

EndOfJobTimeAction

ジョブの終了時間制限を超えたときにシステムが実行するアクション。 このメンバーには、次のいずれかの値を指定できます。

説明
JOB_OBJECT_TERMINATE_AT_END_OF_JOB
0
すべてのプロセスを終了し、終了状態をERROR_NOT_ENOUGH_QUOTAに設定します。 プロセスは、独自の終了を防いだり遅らせたりすることはできません。 ジョブ オブジェクトはシグナル状態に設定され、この制限がリセットされるまでシグナル状態のままです。 制限がリセットされるまで、ジョブに追加のプロセスを割り当てすることはできません。

これは既定の終了アクションです。

JOB_OBJECT_POST_AT_END_OF_JOB
1
PostQueuedCompletionStatus 関数を使用して、完了パケットを完了ポートにポストします。 完了パケットがポストされると、システムはジョブの終了時間制限をクリアし、ジョブ内のプロセスは実行を続行できます。

制限時間を超えたときにジョブに完了ポートが関連付けられていない場合、実行されるアクションはJOB_OBJECT_TERMINATE_AT_END_OF_JOBの場合と同じです。

解説

ジョブの終了時間制限は、JOBOBJECT_BASIC_LIMIT_INFORMATION構造体の PerJobUserTimeLimit メンバーで指定されます。

完了ポートをジョブに関連付けるには、 JOBOBJECT_ASSOCIATE_COMPLETION_PORT 構造体を使用します。

要件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header winnt.h (Windows.h を含む)

関連項目

JOBOBJECT_ASSOCIATE_COMPLETION_PORT

JOBOBJECT_BASIC_LIMIT_INFORMATION

PostQueuedCompletionStatus

QueryInformationJobObject

SetInformationJobObject