다중 스레드 프로그램에서 초기화를 한 번 수행하기위한 스 니펫은 "안전"합니까?다중 스레드 C# 프로그램에서 한 번 초기화 수행
나는 ... 좀 그 권투/언 박싱 몇 가지 문제가 발생할 수 있습니다 걱정 해요 난 그냥 홈페이지 또는 다른 단일 스레드 컨텍스트에서 초기화 할 수 없습니다
private static object initialized = false;
public static void Initialize()
{
lock (initialized)
{
if ((bool)initialized == false)
{
DoInitialization();
initialized = true;
}
}
}
참고.
정적 생성자를 사용하십시오. 또는 새로운'Lazy'개체. –