5

JVM の機能は何ですか? 私が知っているのは次のとおりです。

  • JITコンパイラ
  • GC
  • メモリ アロケータ

Java アプリケーションをロードするときに実行する手順は何ですか?

Java アプリケーションの読み込み時間を次の手順と比較すると、次のようになります。

  • InitializeNativeTargetLLVMで
  • いくつかの GC 初期化
  • いくつかの Qt/GTK/その他の初期化
  • アプリの一部の JIT/事前コンパイル
  • アプリの初期化自体

上記の手順を実行するよりも、JVM のロードに時間がかかるように思えます。それで、それはそれに加えて何をしますか?

4

2 に答える 2

2

これは実際には非常に興味深い質問です。実際に確認するには、Hello World プログラムを実行して、オプション -XX:-TraceClassLoading を Java 実行可能ファイルに指定します。

于 2010-08-17T01:58:05.690 に答える
1

JVM全体をゼロからブートストラップします。それにはしばらく時間がかかります。

于 2010-08-17T06:42:22.610 に答える