0

Java 5 を使用して、ファイル システムからいくつかのシリアル化されたオブジェクトを読み込む関数がありますFutureTask。私のコンピュータのメモリは問題にならないはずです。

メイン メソッド内で関数を呼び出すと、すべて正常に動作しますが、内init()または内から関数を呼び出すとstatic blockHTTPServletあらゆる種類のOutOfMemoryException(通常は Java ヒープ スペース) が取得されます...

サーブレットを使用してこの問題が発生する理由を知っている人はいますか? FutureTasks と Servlets が競合する可能性はありますか? また、問題を理解/修正するにはどうすればよいですか?

4

1 に答える 1

1

コンピューターのメモリと JVM のメモリは大きく異なる可能性があります (初期設定では、JVM は 64Mb の RAM しか割り当てません (JVM によって異なります)。ただし、具体的なコードやデータ サイズの例がなければ、何が問題なのかを正確に知ることは困難です。あなたの場合. HTTPServletは非スレッドセーフとしてマークされていません. あなたの問題を説明するコードを提供できますか?

于 2012-09-18T21:39:15.517 に答える