0

.NETアプリケーションにいくつかのJavaライブラリをデプロイしています。Javaライブラリをikvmcを使用してDLLに変換する必要がありますか、それとも動的機能を使用して実行時に変換を実行する必要がありますか?

ikvmcを使用すると、アプリケーションの初期負荷が削減されると思います。誰かがこれを確認した経験がありますか?一方、動的ルートを使用した場合、ビルドプロセスはかなり簡単になります。

理論的には、事前の変換でも変換エラーを早期に検出できます。ただし、私のテストカバレッジはこの問題を軽減するはずです。

また、ikvmは動的に変換されたアセンブリをディスクのどこかにキャッシュできるので、最初のロード(おそらくセットアップの一部)だけが遅くなると思います。ただし、ikvmドキュメントには、これが当てはまることを示すものは何もありません。

4

1 に答える 1

0

パフォーマンスが重要な場合は、DLLに変換する必要があります。時間差は非常に大きいです。小さなjarファイル(数KB)しかない場合は、コンパイル時間がサイズに比例するため、それを実行できます。

ただし、の単一インスタンスへの参照を保持することが重要ですURLClassloader。新しいものを繰り返し作成する場合はURLClassloader、常にコンパイルする必要があります。また、新しいクラスを使用するため、JITは機能しません。

1回の呼び出しにかかる時間を確認したい場合ikvmc yourJarFile.jar。これは、プログラムが追加の開始時間に必要な時間です。

于 2010-11-01T19:27:29.843 に答える