STM を使用して並列銀行振込を実行する小さなプログラムがあるため、2 コアと 1 コアの異なるマシンでテストしています。2 コア マシンではすべてが機能しますが、1 コア マシンでは、100 万の並列トランザクションを実行すると Java Out of Memory エラーがスローされます。
エラーは次の "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space です
また、同じプログラムのJava同期バージョンがありますが、遅くても100万回のトランザクションに達する可能性があります。
Clojure アプリケーションを 1 コア マシンで動作させるにはどうすればよいですか? 残念ながら、ガベージ コレクターはそれほど多くの Ref を処理できません...どう思いますか?
助けてくれてどうもありがとう!
更新:
それは今動作します, 私はjava -Xmx1000m -jar myprog.jar
完全に動作しました!
JVM のヒープ サイズを増やすことができるとは知りませんでした。それがまさに私の問題でした。「sw1nn」さん、すばらしいコメントをありがとうございます ;)