通知
すべてクリア
Topic starter
2004年7月11日 11:56 PM
サーブレットのライフサイクルについてですが
最初に要求があったとき(もしくは設定により起動時)
にインスタンス化されて、以後の要求時には
再度インスタンス化は行われず、再利用される。
(コンテナによってはインスタンスは1つかそれ以上作られる)
このインスタンスは、APサーバーを終了させるまで
メモリ上にずぅっと残り続けるのでしょうか。
例えば、1つのシステムでサーブレットのクラスが
1万個あったとして、それらを全て呼び出すと
APサーバ終了までメモリ上に1万個分のインスタンスが占有しつづけるのでしょうか。
(他によい方法も思いつきませんが、すごく無駄なような)
このような認識であっていますでしょうか。
2004年7月12日 12:51 PM
確認したわけではないのですが、
あるサーブレットに関連するセッションがタイムアウト等により消滅すれば、
そのサーブレットインスタンスはどこからも参照されなくなるような気がします。
あとはガーベッジコレクターが適当なタイミングで削除してくれるのではないでしょうか。
Topic starter
2004年7月16日 9:18 PM
ご回答ありがとうございます。しかし...
>あるサーブレットに関連するセッションがタイムアウト等により消滅すれば、
>そのサーブレットインスタンスはどこからも参照されなくなるような気がします。
セッションタイムアウトによって、サーブレットインスタンスは
参照されなくなるものでしょうか?
すいません、私も全然詳しくなくてわからないのですが、まだもやもやした感じです。