싱글턴 패턴은 하나 인스턴스는 멀티 스레딩으로 만들어집니다

싱글톤 패턴을 사용하는 동안, 한 인스턴스가 여러 스레드에서 생성됩니다?

threadsafe 싱글톤 클래스를 사용하면 하나의 인스턴스가 만들어집니다 보장합니다.

공개 봉인 클래스를 싱글턴
{
개인 정적 싱글톤 싱글톤 = NULL;
개인 정적 읽기 전용 개체 singletonLock는 = 새 개체();

개인 싱글톤() {}
공공 정적 싱글톤 GetInstance()
{
자물쇠 (singletonLock)
{
면 (싱글톤 == NULL)
{
싱글톤 = 새로운 싱글턴();
}
싱글턴을 반환 ;
}
}
}

문제는 인상에만 때 먼저 인스턴스의 생성.

잠금 사용() 우리에게 인스턴스를 생성하기 위해 같은 시간에 두 쓰레드의 실행을 방지하는 안전 스레드를 제공합니다.

다시 우리는을 확인 아르 (singletonobject == NULL) 그래서 한 번만 인스턴스가 만들어집니다 보장합니다.

이중 체크 옵션은 우리가 클래스에 대한 완전한 증명됩니다.

답변을 남겨주세요

사용할 수있는 이러한 HTML 태그

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>