ユーザー提供のスクリプトが実行されている間に一時的にコードを表示させるために、アプリケーションに多数のクラスローダーを作成する必要がある場合があります。私はこれにURLClassLoader
を使用しています。ClassLoaderを "閉じる"にはどうすればいいですか?
スクリプトが終了すると、クラスローダーを「アンロード」または「クローズ」してリソースを解放する必要があります。
クラスローダーへの参照をnull
に設定するだけで十分ですか?私は特に、余分なクラスがJARファイルにあるので、最終的にファイルハンドルが足りなくなるかどうかは疑問です。
PS:Java 5以上で動作する必要があります。ええ、私は知っている...
これが役に立つかもしれませんします。http:// stackoverflowの。 com/questions/148681/unloading-classes-in-java? – Thomas
オブジェクト参照を削除したり、クラスをアンロードする必要があります。だからあなたは奇妙な、またはpermgenを心配しています – ssedano
実際には、オープンな接続(つまり、リソースを読み込むために開いたInputStreams)が心配です。 –