メモリリークに問題があります。私のコードのこのスキーマ:
CallableStatement c = Baza.conn.prepareCall("select * from something");
ResultSet rs = c.executeQuery();//takes about 100sec
while(rs.next())
{
//do stuff, only calculations, I don't create any object
}
rs.close();
c.close();
実行中executeQuery
の RAM の使用量は 300MB まで上昇し、二度と低下することはありません。プログラムが再び同じ場所にある場合 (ただし、選択がわずかに異なる場合)、RAM の使用量が再び増加する場合とそうでない場合があります。私はただ閉じるだけではありResultSet
ませんか?数時間ごとにそのプログラムを再起動する必要があるため、助けていただければ幸いです。
JDBC4 と posgresql を使用しています