モジュール jdk.management
パッケージ com.sun.management

インタフェースThreadMXBean

  • すべてのスーパー・インタフェース:
    PlatformManagedObject, ThreadMXBean


    public interface ThreadMXBean
    extends ThreadMXBean
    Java仮想マシンのスレッド・システムに対応するプラットフォーム固有の管理インタフェースです。

    このプラットフォーム拡張は、プラットフォーム拡張をサポートするスレッドの実装だけに利用できます。

    導入されたバージョン:
    6u25
    • メソッドの詳細

      • getThreadAllocatedBytes

        long getThreadAllocatedBytes​(long id)
        指定されたIDのスレッドのヒープ・メモリーに割り当てられた総メモリー量の近似値(バイト単位)を返します。 一部のJava仮想マシン実装に使われるオブジェクト割当てメカニズムでは、オブジェクトが割り当てられた時間とそのサイズが記録される時間の間に遅延が発生するため、戻り値は近似値です。

        指定されたIDのスレッドが生存していないか、存在していない場合、このメソッドは-1を返します。 スレッド・メモリー割当ての測定が無効の場合、このメソッドは-1を返します。 スレッドが起動され、生存している場合、スレッドは生存しています。

        スレッドが起動されたあとにスレッド・メモリー割当ての測定が有効になった場合、Java仮想マシンの実装では、スレッド・メモリー割当ての測定が起動されたポイントとして、この機能が有効になった時間以前の任意の時間を選択できます。

        パラメータ:
        id - スレッドのスレッドID
        戻り値:
        指定されたIDのスレッドが存在し、生存していて、スレッド・メモリー割当ての測定が有効な場合は、指定されたIDのスレッドのヒープ・メモリーに割り当てられた総メモリー量の近似値(バイト単位)。そうでない場合は-1
        例外:
        IllegalArgumentException - id <= 0の場合。
        UnsupportedOperationException - Java仮想マシンの実装がスレッド・メモリー割当ての測定をサポートしない場合。
        関連項目:
        isThreadAllocatedMemorySupported(), isThreadAllocatedMemoryEnabled(), setThreadAllocatedMemoryEnabled(boolean)
      • getThreadAllocatedBytes

        long[] getThreadAllocatedBytes​(long[] ids)
        入力配列idsにIDがある各スレッドのヒープ・メモリーに割り当てられた総メモリー量の近似値(バイト単位)を返します。 一部のJava仮想マシン実装に使われるオブジェクト割当てメカニズムでは、オブジェクトが割り当てられた時間とそのサイズが記録される時間の間に遅延が発生するため、戻り値は近似値です。

        このメソッドは、入力配列idsにあるスレッドIDごとにgetThreadAllocatedBytes(long)メソッドを呼び出し、返された配列の対応する要素に戻り値を設定することと同等です。

        パラメータ:
        ids - スレッドIDの配列。
        戻り値:
        IDの入力配列の対応する要素にIDがあるスレッドのヒープ・メモリーに割り当てられた総メモリー量の近似値(バイト単位)をそれぞれ表すlong値の配列。
        例外:
        NullPointerException - idsnullである場合
        IllegalArgumentException - 入力配列ids内の任意の要素が<= 0の場合。
        UnsupportedOperationException - Java仮想マシンの実装がスレッド・メモリー割当ての測定をサポートしない場合。
        関連項目:
        getThreadAllocatedBytes(long), isThreadAllocatedMemorySupported(), isThreadAllocatedMemoryEnabled(), setThreadAllocatedMemoryEnabled(boolean)
      • isThreadAllocatedMemorySupported

        boolean isThreadAllocatedMemorySupported​()
        Java仮想マシンがスレッド・メモリー割当ての測定をサポートするかどうかをテストします。
        戻り値:
        Java仮想マシンの実装がスレッド・メモリー割当ての測定をサポートする場合はtrue、そうでない場合はfalse
      • isThreadAllocatedMemoryEnabled

        boolean isThreadAllocatedMemoryEnabled​()
        スレッド・メモリー割当ての測定が有効かどうかをテストします。
        戻り値:
        スレッド・メモリー割当ての測定が有効な場合はtrue、そうでない場合はfalse
        例外:
        UnsupportedOperationException - Java仮想マシンがスレッド・メモリー割当ての測定をサポートしない場合。
        関連項目:
        isThreadAllocatedMemorySupported()
      • setThreadAllocatedMemoryEnabled

        void setThreadAllocatedMemoryEnabled​(boolean enable)
        スレッド・メモリー割当ての測定を有効または無効にします。 デフォルトの設定はプラットフォームに応じて異なります。
        パラメータ:
        enable - 有効にするにはtrue、無効にするにはfalse
        例外:
        UnsupportedOperationException - Java仮想マシンがスレッド・メモリー割当ての測定をサポートしない場合。
        SecurityException - セキュリティ・マネージャが存在する場合で、呼出し元がManagementPermission("control")を持たない場合。
        関連項目:
        isThreadAllocatedMemorySupported()