ホームページ >Java >&#&チュートリアル >JNI を使用せずに Java でシステム情報にアクセスするにはどうすればよいですか?

JNI を使用せずに Java でシステム情報にアクセスするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-19 10:12:09356ブラウズ

How Can I Access System Information in Java Without Using JNI?

Java でのシステム情報へのアクセス

概要:
複数のプラットフォームにまたがる Java アプリケーションを開発する場合、ディスク領域の使用状況、CPU 使用率、メモリ消費量などのシステム レベルの情報を抽出するという共通のニーズが生じます。この記事では、JNI (Java Native Interface) に頼らずにこのデータを取得するためのさまざまな方法を検討します。

OS レベルのシステム情報へのアクセス:

Java は OS への限定的なアクセスを提供します-Runtime クラスを介した -level システム情報。利用可能なプロセッサ、空きメモリ、最大メモリなどの詳細を取得できます。さらに、Java 1.6 以降の File クラスでは、ディスク領域の使用状況情報を取得できます。

// Example
public class SystemInfo {
    public static void main(String[] args) {
        Runtime runtime = Runtime.getRuntime();
        System.out.printf("Available processors: %d\n", Runtime.availableProcessors());
        System.out.printf("Free memory: %d bytes\n", Runtime.freeMemory());
        long maxMemory = Runtime.maxMemory();
        System.out.printf("Maximum memory: %s\n", (maxMemory == Long.MAX_VALUE) ? "no limit" : maxMemory + " bytes");
        System.out.printf("Total memory: %d bytes\n", Runtime.totalMemory());
        
        File[] roots = File.listRoots();
        for (File root : roots) {
            System.out.printf("Filesystem root: %s\n", root.getAbsolutePath());
            System.out.printf("Total space: %d bytes\n", root.getTotalSpace());
            System.out.printf("Free space: %d bytes\n", root.getFreeSpace());
            System.out.printf("Usable space: %d bytes\n", root.getUsableSpace());
        }
    }
}

アプリケーション固有のパフォーマンス情報:

アプリケーションに関するシステム情報を取得するには、 Java アプリケーション自体、ManagementFactory クラスは、メモリ、スレッド、クラスの読み込みに関する洞察を提供します。統計情報。

追加リソース:

  • [Java ランタイム情報](https://docs.oracle.com/javase/7/docs/api/) java/lang/Runtime.html)
  • [Java システムプロパティ](https://docs.oracle.com/javase/7/docs/api/java/lang/System.html)
  • [Java 管理インターフェイス](https://docs.oracle.com /javase/7/docs/technotes/guides/management/overview.html)

以上がJNI を使用せずに Java でシステム情報にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。