본문 바로가기

CLR

(3)
.NET 참조 개체 인스턴스의 SyncBlock 을 확인하는 방법 http://blog.naver.com/techshare/100143525064 위의 글을 퍼온글입니다. 사실, 원래는 StringBuilder 에서 OutOfMemoryException 의 원인만 밝히려고 했는데 쓰다 보니 궁금함이 꼬리를 물어서 이렇게 이야기가 길어졌군요. ^^ StringBuilder 에서의 OutOfMemoryException 오류 원인 분석 ; http://www.sysnet.pe.kr/2/0/1171 windbg - 힙에서 .NET 타입에 대한 배열을 찾는 방법 ; http://www.sysnet.pe.kr/2/0/1172 .NET Array는 왜 12 bytes 의 기본 메모리를 점유할까? ; http://www.sysnet.pe.kr/2/0/1173 일반 참조형의 메모리 소..
주저리주저리 디버깅 오늘은 일이 잘 안되네 마음잡기가 힘들다. 머리가 멍하고 거의 움직이지 않으니 허리도 아파고 머리를 식히고자 글을 한번 써본다. 비쥬얼 스튜디오를 이용한 디버깅을 간단하게 소개하고자 한다. 지금 현재 클래스에 있는 필드들을 알아보자. 콘솔어플리케이션을 만들어 보자. 1. 위와 같이 콘솔 어플리케이션을 만들어보자. 2. Person 클래스를 만들고 Main 메서드 안에 객체를 하나 만들어보자. 3. 디버깅 프로퍼티에서 Enable unmaged code debugging을 체크하자. 4. 직접실행 창에 .load sos 디버깅할수있게 해주는 sos.dll를 로드하고 !dumpheap -stat 명령어를 쳐보자. managed heap에 로드된 객체(6332)들이 무수히 많음을 볼수 있다. 명령어는 msdn..
CLR Profiler를 다운받아 실행하기 http://www.microsoft.com/download/en/confirmation.aspx?id=16273 위의 사이트에서 프로파일러를 다운받아 설치해 보자. 자신있는 개발자들은 소스도 있으니 한번 분석해 보자. ㅋㅋ