是什麼意思[ThreadStatic()]關於[ThreadStatic()] C#
我有一段代碼,我發現[ThreadStatic()]
目前使用的是什麼意思....當使用[ThreadStatic()]
public class Context
{
[ThreadStatic()]
private static Context _Context = null;
private HttpContext _HttpContext = null;
public Context()
{
_HttpContext = HttpContext.Current;
}
public static Context Current
{
if(_Context == null ||
_HttpContext != _HttpContext.Current)
{
_Context = new Context();
}
return _Context;
}
}
我不會去想asp.net點是完全準確。一個線程可以在請求之間重複使用,因此在線程本地存儲每個請求數據不是100%安全的。每個請求存儲信息有更簡單和更安全的方法。 –
@詹姆斯 - 謝謝 - 你是對的,線程被重用;但是1個線程一次不會處理多個請求,因爲它只是從線程池中提取它們。爲了避免含糊不清,我刪除了這個句子。 – vcsjones