如果在共享函數中訪問httpcontext而不傳入httpcontext作爲參數,是否有線程安全問題?在共享函數線程中訪問httpcontext安全嗎?
我的問題是:util類中的2個函數是否同樣線程安全?
Class foo
Sub main()
Dim qs1 = util.getQS(HttpContext.Current)
Dim qs2 = util.getQS()
End Sub
End Class
Class util
Shared Function getQS(hc As HttpContext) As String
Return hc.Request.QueryString.ToString
End Function
Shared Function getQS() As String
Return HttpContext.Current.Request.QueryString.ToString
End Function
End Class
編輯
我發現了一個SO後,我錯過了我最初的研究,其中也有一些很好的答案。
感興趣的: HttpContext.Current.Response inside a static method
Thanks @RickNZ - 這些後臺工作線程可以從哪裏發起? IIS? – KorsG 2012-01-06 17:09:04
如果將'HttpContext'存儲到一個靜態變量中,那麼它對IIS線程可見(不好)。後臺線程是您直接使用'new Thread()'創建的線程或通過某種類型的ThreadPool間接使用的線程。 – RickNZ 2012-01-06 23:43:22