Job Object
誰の子かではなくどのJobに属するかでプロセス群を束ね、制限やまとめての終了を行えるWindowsの仕組み。
- 概念URI
https://comcomponent.com/knowledge/job-object/
- 別名・表記
- ジョブオブジェクト / CreateJobObjectW / AssignProcessToJobObject
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- Job ObjectはJOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSEで構成できます。Job ObjectはJOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSEを付けることで、最後のjob handleが閉じられたときに全プロセスを終了させるよう構成できる / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- Job Objectは親クラッシュ時の自動回収に対する本記事の推奨です。親の生死と子プロセス木の寿命を結びつけたいなら、基準点はJob Objectであると本記事は結論づけている / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- PROC_THREAD_ATTRIBUTE_JOB_LISTはJob Objectを前提とします。PROC_THREAD_ATTRIBUTE_JOB_LISTで起動時点からJob所属にするには、あらかじめ作成したJob Objectのハンドルを渡す必要がある / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 監視プロセス(watchdog)をJob Objectに用いることは推奨されません。watchdogを監視対象と同じJobに入れると、監視対象を片づける際に再起動役まで一緒に消えるため、Jobの外に置くべきである / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- Job ObjectはI/O完了ポート(IOCP)を利用します。Job ObjectはI/O完了ポートを関連付けてプロセスの起動・終了通知を受け取れるが、その通知だけでcorrectnessを組むべきではなく監視・集計向けと位置付けられる / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- Job Objectはプロセス木(process tree)の実装を担います。Jobの境界がプロセス木の境界であり、誰の子かではなくどのJobに属するかでプロセス木を束ねる。ただしbreakawayを許可した場合は子がJobの外で生まれるため、Jobの境界と木の一致は既定の挙動に限られる。 / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- Job Objectはプロセス木(process tree)の実装を担います。Jobはプロセスのグループを一つの単位として束ね、既定ではCreateProcessで生まれる子・孫が同じJobに入るためプロセス木の境界として扱えるが、breakawayやWMIなどの代理起動で生まれたプロセスは木の外に出るため、境界の一致は既定の生成経路に限られる。 / 確度: 条件付きの関係 / 確認日: 2026-08-29 出典
- Job ObjectはJOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSEで構成できます。Job ObjectはJOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSEを付けることで、最後のjob handleが閉じたときに配下の全プロセスを終了させる構成にできる。 / 確度: 確立した関係 / 確認日: 2026-08-29 出典
- Job Objectは親クラッシュ時の自動回収に対する本記事の推奨です。親の生死と子プロセス木の寿命を結びつけたいなら、基準点はJob Objectであると本記事は結論づけている / 確度: 確立した関係 / 確認日: 2026-08-29 出典
- Job ObjectはIsProcessInJobで確認できます。自分や相手のプロセスがJobに入っているかどうかは、IsProcessInJobで判定できる。 / 確度: 確立した関係 / 確認日: 2026-08-29 出典
- Job ObjectはProcess Explorerで確認できます。プロセスがどのJobに所属し、どの制限が付いているかは、Process ExplorerのプロセスプロパティのJobタブで確認できる。 / 確度: 確立した関係 / 確認日: 2026-08-29 出典
- PROC_THREAD_ATTRIBUTE_JOB_LISTはJob Objectを前提とします。PROC_THREAD_ATTRIBUTE_JOB_LISTで起動時点からJob所属にするには、あらかじめ作成したJobハンドルが必要になる。 / 確度: 確立した関係 / 確認日: 2026-08-29 出典
- Jobの会計情報はJob Objectに保存されます。会計情報は終了したプロセスの分も含めてJobに保持され、QueryInformationJobObjectで取得できる。 / 確度: 確立した関係 / 確認日: 2026-08-29 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。