- PR -

Session変数のメモリの開放方法は?

投稿者投稿内容
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-08-07 12:55
Session変数 からの削除はそれでいいとして、
あとは削除するタイミングをどうするかですね。
未記入
ベテラン
会議室デビュー日: 2005/07/14
投稿数: 66
投稿日時: 2006-08-07 13:37
みなさんどうも有難うございます。

>囚人さん
>だいたい、メモリが気になるなら、Session だけ気にするのも変でしょう。
上記ですが、Sessionに大きいサイズの値を一時的に格納しているので
使用後に即メモリを開放したかったのです。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2006-08-07 13:52
セッションには「値」は格納されませんが…。
removeしても、他に参照が残っていればメモリは開放されないわけですが、それはOKですかね?
即開放されてもされなくても、次に大きなサイズのメモリが必要とされるまでは、まず変わらないし…。

disposeはいいとして、普通物理的なメモリまで考えても、うまくいかないですよ。
ガベージコレクションメソッドを呼べば、必ずガベージコレクタが実行されるわけでもないし。
(….NETは必ず実行されるのかな?)
ひろれい
ぬし
会議室デビュー日: 2006/03/02
投稿数: 486
お住まい・勤務地: 万博開催地
投稿日時: 2006-08-07 14:34
引用:

未記入さんの書き込み (2006-08-07 13:37) より:

>囚人さん
>だいたい、メモリが気になるなら、Session だけ気にするのも変でしょう。

上記ですが、Sessionに大きいサイズの値を一時的に格納しているので
使用後に即メモリを開放したかったのです。


う〜ん・・・
Session オブジェクトの使い方を検討し直してみてはいかがですか?

  Sessionオブジェクト
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-08-07 23:14
引用:

未記入さんの書き込み(2006-08-07 13:37)より:

>囚人さん
>だいたい、メモリが気になるなら、Session だけ気にするのも変でしょう。
上記ですが、Sessionに大きいサイズの値を一時的に格納しているので
使用後に即メモリを開放したかったのです。


セッション変数を、“どこに”格納していますか?まさか、インプロセス?
ひろれい
ぬし
会議室デビュー日: 2006/03/02
投稿数: 486
お住まい・勤務地: 万博開催地
投稿日時: 2006-08-08 08:59
1,000台の端末から同時に処理されたら、どうなるんでしょ。

想定外?!
未記入
ベテラン
会議室デビュー日: 2005/07/14
投稿数: 66
投稿日時: 2006-08-08 11:15
>Jittaさん
セッション変数はデフォルト設定のままです。

>ひろれいさん
今回はアクセスされる端末数が数十台程度なので想定してませんでした。。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-08-08 23:32
うーん。。。

 まぁ、ASP.NET を使用したシステムを作る前の、必読本です。
# って、今頃読んでるヤツが言うな
日経 BP の書籍紹介
『.NETエンタープライズWebアプリケーション開発技術大全』の、とりあえず2,3は読みましょう。
(→著者インタビュー記事

スキルアップ/キャリアアップ(JOB@IT)