- PR -

ASP.NETとStaticメソッド

1
投稿者投稿内容
GUNNM
常連さん
会議室デビュー日: 2002/01/23
投稿数: 30
お住まい・勤務地: 横浜
投稿日時: 2002-10-04 02:11
お世話になります。

ASP.NETは、マルチスレッドで動作すると聞いております。
そこで、単純な質問ですが、クラスにStaticメソッドを実装する場合は、Lock等の処理が必須となるのかどうかお知らせください。
以前、MSのサンプルに、普通にStaticメソッドがあったような気が、、、

よろしくおねがいします。
小野@どっとねっとふぁん
ぬし
会議室デビュー日: 2001/10/30
投稿数: 402
投稿日時: 2002-10-04 10:24
ステートをもたないようなメソッドであれば問題はでないように思います。

#ASP.NETで利用するクラスではステートを持たないような設計にするのは
 当然でしょうけど。そのためにSessionオブジェクトやApplicationオブジェクトが
 あるのだし。
GUNNM
常連さん
会議室デビュー日: 2002/01/23
投稿数: 30
お住まい・勤務地: 横浜
投稿日時: 2002-10-09 08:31
レスポンスをいれていただき、ありがとうございます。
たとえば、以下のようなコードは、いかがでしょうか?
SessionObjクラス内にあるスタティックメソッドで、戻り値は自インスタンスです。
メソッド自体に意味があるかどうかは、別として、、
それに、その場で書いているので、Syntaxエラーがあるかもしれませんが。。。

public static SessionObj FromSession()
{
SessionObj inst = HttpContext.Session["hogehoge"];
if( inst == null )
{
inst = new SessionObj();
}
return inst;
}
1

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