다음을 통해 공유


프로파일링 API의 가비지 수집 블로킹

업데이트: 2007년 11월

CLR(공용 언어 런타임)에서 ICorProfilerCallback 인터페이스의 특정 메서드를 호출할 때 런타임에서는 프로파일러가 해당 호출에서 컨트롤을 반환해야 가비지 수집을 수행할 수 있습니다. 이는 프로파일링 서비스에서 가비지 수집에 대해 안전한 상태로 스택을 생성하지 못하는 경우도 있기 때문입니다. 대신 콜백에는 가비지 수집을 사용할 수 없습니다. 이러한 경우 프로파일러에서 최대한 빨리 컨트롤을 반환해야 합니다. 이 상황은 다음과 같은 콜백에 적용됩니다.

또한 다음 콜백에서는 프로파일러가 fIsSafeToBlock 매개 변수를 사용하여 호출별로 가비지 수집을 블로킹할 수 있습니다.

프로파일러에서 가비지 수집을 블로킹하지 않을 경우 가비지 수집을 지연합니다. 프로파일러가 가비지 수집을 트리거하거나 관리되는 힙의 공간을 할당하는 CLR 함수를 호출하지 않으면 가비지 수집을 지연해도 아무 지장이 없습니다.

참고 항목

개념

프로파일링 API의 가비지 수집

기타 리소스

프로파일링 API의 공통 기능

프로파일링 개요