我在ASP.NET HttpHandler
中使用了一個ThreadLocal
變量。我認爲它會導致每個請求一個新的變量。ASP.NET中的ThreadLocal等同於每個請求變量嗎?
我在我的應用程序中有一些奇怪的行爲。當一個ThreadLocal
變量被創建並放置在ASP.NET頁面中時?
如果以後ASP.NET使用相同的線程進行其他請求,會發生什麼情況?它是否會導致新的ThreadLocal
變量或先前創建的值(與其他請求一起使用)將被使用?
如果當線程實際部署ThreadLocal
變量設置,然後我的假設失敗,ASP.NET(因爲線程回到游泳池和不按要求是唯一的)
我簡化了問題。實際上,應用程序只是從'HttpHandler'啓動的。後來,一些可重複使用的模塊(用於桌面應用程序)將在其部分生命週期中處理請求,所以不知道ASP.NET會話。 – Xaqron 2011-05-07 02:21:35
那麼你已經達到了一個備用解決方案呢? – 2011-05-07 02:22:49
如果'ThreadLocal'以我期望的方式工作,那麼可以爲asp.net和桌面應用程序共享相同的模塊,但我不確定。 – Xaqron 2011-05-07 02:26:01