싱글 톤 패턴을 구현 중이며 초기화는 스레드로부터 안전해야합니다.스레드 안전 싱글 렛 정적 메소드 초기화
나는 이중 체크 잠금 구현을 사용하는 것과, 그것을 할 수있는 몇 가지 방법, 또는 다른 기술을 본 것 (예 : http://csharpindepth.com/articles/general/singleton.aspx) 내가 알고 싶어
경우 네 번째 버전과 유사 다음과 같은 접근 방식, 이 기사에서는 스레드로부터 안전합니다. 기본적으로 인스턴스를 만드는 정적 필드 초기화 프로그램에서 메서드를 호출하고 있습니다. 나는 게으름을 걱정하지 않는다. 감사!
public static class SharedTracerMock
{
private static Mock<ITracer> tracerMock = CreateTracerMock();
private static Mock<ITracer> CreateTracerMock()
{
tracerMock = new Mock<ITracer>();
return tracerMock;
}
public static Mock<ITracer> TracerMock
{
get
{
return tracerMock;
}
}
}
Jon 님, 많은 도움을 주셔서 감사합니다. –
C# 6 부분이 좋았습니다. – Disposer