다음을 통해 공유


ICorProfilerInfo2::GetThreadStaticAddress 메서드

지정된 스레드의 범위에 있는 특정 스레드에 정적인 필드의 주소를 가져옵니다.

HRESULT GetThreadStaticAddress(
    [in] ClassID     classId,
    [in] mdFieldDef  fieldToken,
    [in] ThreadID    threadId,
    [out] void       **ppAddress);

매개 변수

  • classId
    [in] 요청된 스레드에 정적인 필드가 들어 있는 클래스의 ID입니다.

  • fieldToken
    [in] 요청된 스레드에 정적인 필드에 대한 메타데이터 토큰입니다.

  • threadId
    [in] 요청된 정적 필드의 범위인 스레드의 ID입니다.

  • ppAddress
    [out] 지정된 스레드 내에 있는 정적 필드의 주소에 대한 포인터입니다.

설명

GetThreadStaticAddress 메서드는 다음 중 하나를 반환할 수 있습니다.

  • CORPROF_E_DATAINCOMPLETE HRESULT(지정된 컨텍스트에서 지정된 정적 필드에 주소가 할당되지 않은 경우)

  • 가비지 수집 힙에 있을 수 있는 개체의 주소. 이러한 주소는 가비지 수집 이후 무효화될 수 있으므로 프로파일러에서는 가비지 수집 후 이러한 주소가 유효하다고 가정해서는 안 됩니다.

클래스의 클래스 생성자가 완료되기 전에 일부 정적 필드가 이미 초기화되고 루팅 가비지 수집 개체일 수 있더라도GetThreadStaticAddress는 모든 정적 필드에 대해 CORPROF_E_DATAINCOMPLETE를 반환합니다.

요구 사항

플랫폼: .NET Framework 시스템 요구 사항 참조

헤더: CorProf.idl, CorProf.h

라이브러리: CorGuids.lib

.NET Framework 버전: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

참고 항목

참조

ICorProfilerInfo 인터페이스

ICorProfilerInfo2 인터페이스