Просматривал мой проект и наткнулся на следующий код (и класс) внутри файла MyWebExtentions, который я никогда раньше не видел.
Private s_Computer As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Devices.ServerComputer)
''' <summary>
''' Returns information about the host computer.
''' </summary>
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")> _
Friend ReadOnly Property Computer() As Global.Microsoft.VisualBasic.Devices.ServerComputer
Get
Return s_Computer.GetInstance()
End Get
End Property
Итак, я попытался посмотреть в проводнике объектов, и он не появился, поиск в MSDN и ничего, пробовал stackoverflow также ничего. В конце концов я нашел эту статью, которая объясняет что он позволяет вам создать «потокобезопасное хранилище для конкретных потоков», но не объясняет, почему и как.
Итак, может ли кто-нибудь быть достаточно любезным, чтобы объяснить, какова цель этого класса, как он работает и есть ли какие-либо подходящие сценарии использования для этого класса в коде, сгенерированном не дизайнером?
Lazy<T>
выполняет то же самое. - person Hans Passant   schedule 15.08.2017