接続を閉じずにSQL接続オブジェクトをnullに設定するとどうなりますか? SQLサーバーはまだ接続を保持していますか?誰と?SQL接続オブジェクト= nullに設定された場合
私はこれについて検索をたくさん持っていますが、答えを見つけていない接続オブジェクトへの参照が、この場合には削除され
Connection conn = null;
接続を閉じずにSQL接続オブジェクトをnullに設定するとどうなりますか? SQLサーバーはまだ接続を保持していますか?誰と?SQL接続オブジェクト= nullに設定された場合
私はこれについて検索をたくさん持っていますが、答えを見つけていない接続オブジェクトへの参照が、この場合には削除され
Connection conn = null;
あなたはnullに接続オブジェクト/参照を設定しています、接続がオープン状態になっているので、オープンになりリソースは解放されません。
接続を終了しないと、接続リークが発生する可能性があります。 finallyブロックで接続を閉じることが重要です。
接続conn = nullを記述すると、SQL Serverは接続を保持しませんが、オブジェクトアドレスはスタックから削除されますが、ヒープにはオブジェクトの値が保持されます。メモリが不足しているためまだヒープで占めています。
したがって、私が割り当てnullを割り当てると、接続プルから削除されますか? –
@umeshsohaliya上記の私のコメントを見てください。何を知る必要がありますか? –
実行が完了するか処理が完了すると、すべての接続がフラッシュされます。 application/Processがまだ実行中の場合、データベースに接続が保持されます。 –
接続がリークします。接続を閉じるためにサーバー側に決して伝達されることはありません。 Nullで十分ではありません。それは両面の会話です。 – duffymo
@duffymoそれは近くの接続を処分するのはどうですか? –
クローズド接続は正しいことです。 GCでクリーンアップするか、接続プールに戻します。 – duffymo