thread サブコマンド (dbx 用): アクティブ・スレッドのリストを表示する

形式

説明

thread サブコマンドは、アプリケーション・プログラムの アクティブのスレッドのリストを表示します。 リストしたいスレッドを指定するために number パラメーターを 使用した場合以外は、すべてのアクティブ・スレッドがリストされます。activasyncdead、または pcanc オプションを使用すると、スレッドをその状態によって選択することもできます。

info オプションを使用すると、スレッドについてのすべての情報を表示することができます。また、hold または unhold オプションによって、スレッドを保留または保留解除することができます。フォーカス・スレッドは、デフォルトによって実行中のスレッドになります。dbx は、これを通常の dbx サブコマンド (register など) の コンテキストとして使用します。dbx フォーカス・スレッドを切り替えるために は、current オプションを使用することができます。

  1. すべてのスレッド・オブジェクトを表示するには、以下のように入力します。
    thread
  2. スレッド・オブジェクト番号 1 および 2 を表示するには、以下のように入力します。
    thread 1 2
  3. すべてのアクティブ・オブジェクトを表示するには、以下のように入力します。
    thread activ
  4. dead 状態のスレッドをすべて表示するには、以下のように入力します。
    thread dead
  5. スケジュールされるのを待っている非同期状態のスレッド (すなわち、取り消し可能性が PTHREAD_INTR_ASYNCHRONOUS のスレッド) をすべて表示するには、以下のように入力します。
    thread async

    このスレッドは PTATASYNCHRONOUS 属性で作成されたものであり、限度に到達したため、実行のためにキューに入れられたものです。例えば、スレッド限界が 10 に設定されており、12 のスレッドがある場合は、そのうちの 2 つは dbx thread コマンドに対して async として表示されます。

  6. pcanc 状態のスレッド (すなわち 、pthread_cancel() によって取り消しを要求されたスレッド) を すべて表示するには、以下のように入力します。
    thread pcanc
  7. すべてのスレッドを保留するには、以下のように入力します。
    thread hold
  8. スレッド番号 1 および 4 を保留するには、以下のように入力します。
    thread hold 1 4
  9. スレッド番号 1 および 4 を保留解除するには、以下のように入力します。
    thread unhold 1 4
  10. フォーカス・スレッドを表示するには、以下のように入力します。
    thread current
  11. フォーカス・スレッドをスレッド番号 1 に設定するには、以下のように入力します。
    thread current 1
  12. スレッド番号 3 についての情報を入手するには、以下のように入力します。
    thread info 3