이 문서는 기계로 번역한 것입니다. 원본 텍스트를 보려면 포인터를 문서의 문장 위로 올리십시오. 추가 정보
번역
원본
이 항목은 아직 평가되지 않았습니다.- 이 항목 평가

LazyInitializer.EnsureInitialized<T> 메서드 (T%, Func<T>)

아직 초기화되지 않은 경우 지정된 함수를 사용하여 대상 참조 형식을 초기화합니다.

네임스페이스:  System.Threading
어셈블리:  mscorlib(mscorlib.dll)
public static T EnsureInitialized<T>(
	ref T target,
	Func<T> valueFactory
)
where T : class

Type 매개 변수

T

초기화할 참조의 참조 형식입니다.

매개 변수

target
형식: T
참조 형식의 T 이미 초기화 되지 않은 경우 초기화 합니다.
valueFactory
형식: System.Func<T>
참조를 초기화하기 위해 호출되는 함수입니다.

반환 값

형식: T
초기화된 T 형식의 값입니다.
예외조건
MissingMemberException

형식 T에 기본 생성자가 없는 경우

InvalidOperationException

valueFactory가 null을 반환합니다(Visual Basic의 경우 Nothing).

이 메서드는 참조 형식에 대해서만 사용할 수 있으며 valueFactory는 null 참조(Visual Basic에서는 Nothing)를 반환할 수 없습니다. 값 형식을 초기화하거나 null 참조 형식을 허용하도록 하려면 EnsureInitialized의 다른 오버로드를 참조하십시오.

이 메서드는 동시에 여러 스레드에서 target 초기화하는 데 사용할 수 있습니다.

여러 스레드가 이 메서드에 동시에 액세스할 경우 T 의 여러 인스턴스를 만들 수 있지만 하나만 target에 저장됩니다. 이러한 발생에서 이 메서드는 저장되지 않은 개체를 삭제하지 않습니다. 이러한 개체를 삭제해야 하는 경우 개체가 사용되지 않았고 개체를 적절히 삭제해야 하는지 호출자에게 확인합니다.

.NET Framework

4.5, 4에서 지원

.NET Framework Client Profile

4에서 지원

이식 가능한 클래스 라이브러리

이식 가능한 클래스 라이브러리에서 지원

Windows 스토어 앱용 .NET

Windows 8에서 지원

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(서버 코어 역할은 지원되지 않음), Windows Server 2008 R2(서버 코어 역할은 SP1 이상에서 지원, Itanium은 지원되지 않음)

.NET Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.
이 정보가 도움이 되었습니까?
(1500자 남음)

커뮤니티 추가 항목

추가
Microsoft는 MSDN 웹 사이트에 대한 귀하의 의견을 이해하기 위해 온라인 설문 조사를 진행하고 있습니다. 참여하도록 선택하시면 MSDN 웹 사이트에서 나가실 때 온라인 설문 조사가 표시됩니다.

참여하시겠습니까?
© 2013 Microsoft. All rights reserved.