4

ネイティブ C++ アプリケーションを終了するときに、DestroyJavaVM() への JNI 呼び出しを行うと、ハングします... Java がリソースが使用されなくなったことを認識すると、最終的にアプリケーションは閉じます (約 10 ~ 15 分)。ハングしている理由はわかりませんが、JVM 側でメモリを解放していないオブジェクトがあると思います。JNI側でガベージコレクションを強制する方法はありますか?

4

1 に答える 1

5

JNI仕様の関連部分から:

現在のスレッドが接続されていない場合、VMは現在のスレッドを接続し、現在のスレッドがデーモン以外の唯一のユーザーレベルのスレッドになるまで待機します。

于 2012-06-12T05:34:33.357 に答える