asp.net2.0にてDLL(アンマネージコード)を使用する方法
で、私は「TLS(スレッドローカルストレージ) を使ってはどうか」と言った。
そう言えば、.NET で TLS を使いたいと思ったことがない。TLS を実現するクラスってあるか?と調べてみた。
ThreadStaticAttribute クラス
LocalDataStoreSlot クラス
超便利な属性があった。属性って便利だね。
ASP.NET では基本的に static 変数を使おうとすると破綻する。1 リクエスト内で共有したい値等は Session に持たせるのは大袈裟すぎるので、System.Web.HttpContext.Items に値を保持したりするのだが、TLS で代用してもいいのかもって思った。