internal sealed class ThreadSafeObjectProvider<T> where T: new()
{
[ThreadStatic, CompilerGenerated]
private static T m_ThreadStaticValue;
internal T GetInstance
{
[DebuggerHidden]
get
{
if (MyProject.ThreadSafeObjectProvider<T>.m_ThreadStaticValue == null)
{
MyProject.ThreadSafeObjectProvider<T>.m_ThreadStaticValue = Activator.CreateInstance<T>();
}
return MyProject.ThreadSafeObjectProvider<T>.m_ThreadStaticValue;
}
}
}