敬愛する結城先生が困ったさんにヒントをくれた。

Thread-Specific Strage
http://www.hyuki.com/dp/dpinfo_ThreadSpecificStorage.html

java.lang.ThreadLocalは、現在のスレッドに固有な領域(threadに対してspecificな領域)を確保するクラス。という事は、例えばJ2EEアプリケーションにおいてRequest単位のThreadで、固有オブジェクトを参照しつつ処理が行えるという事。

java.spl.Connection等DataSourceを使うとプーリングされて共用されてしまうようなオブジェクトの場合、これをnewしてオブジェクトをセットすれば、とりあえず競合は避けられそう。

-----------------------------------------------------------
後日談

スーパーロボットKさんにこの話をすると

「それはWebsphere 4.0から実装されているねー」

と言われた。Middlewareの既保有機能を作りこんでしまった俺って・・・。
でも格別問題はないし、WASとアプリケーションに2重フォローなんだから、Over Specっぽいけど問題はないでしょう、等と言われてみたり。Middlewareの知識のなさを痛感(だってマニュアル多すぎなんだもん)。早速Redbookを借りてきて勉強してみた。

日々是進歩の糧

コメント

お気に入り日記の更新

この日記について

日記内を検索