부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. .NET Profiler + 디버거 연결 + .NET Exceptions = cpu high COR_PRF_USE_PROFILE_IMAGES 옵션의 .NET Profiler가 적용된 닷넷 프로세스를 다시 Debug Diagnostic 도구(및 기타 모든 Debugger)로, 프로세스 비정상 종료 시 "Debug Diagnostic Tool"를 이용해 덤프를 남기는 방법 ; https://www.sysnet.pe.kr/2/0/1786 Debug Diagnostic Tool v2 Update 3 ; https://www.microsoft.com/en-us/download/details.aspx?id=58210 연결(Attach to process)해 놓으면 해당 프로세스에서 잦은 예외(.NET Exceptions) 발생 시 dbghost.exe의 CPU 사용률과 함께 닷넷 프로세스는 급격한 성능 저하 현상이 발생합니다. 만약 저 상황이 꼭 필요한데 성능 문제를 해결하고 싶다면 NGen의 "profiler-enhanced images"를 준비하면 됩니다. NGen 모듈과 .NET Profiler ; https://www.sysnet.pe.kr/2/0/11321 참고로, 디버거가 붙은 지 모르고 성능 저하 현상이 나타난 프로세스를 메모리 덤프로 떠서 분석하다가 도저히 해석이 안 되어서 며칠을 고민만 한 적이 있습니다. ^^; [이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.] [다음 글] 오류 유형: 422. 윈도우 업데이트 - Code 9C48 Windows update encountered an unknown error.[이전 글] 디버깅 기술: 103. windbg - .NET 4.0 이상의 환경에서 모든 DLL에 대한 심벌 파일을 로드하는 파이썬 스크립트 [최초 등록일: 10/17/2017] [최종 수정일: 5/24/2021] 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다. by SeongTae Jeong, mailto:techsharer at outlook.com 비밀번호 댓글 작성자 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 ... NoWriterDateCnt.TitleFile(s) 13914정성태4/11/20256301디버깅 기술: 220. windbg 분석 사례 - x86 ASP.NET 웹 응용 프로그램의 CPU 100% 현상 (4)13913정성태4/10/20254121오류 유형: 950. Process Explorer - 64비트 윈도우에서 32비트 프로세스의 덤프를 뜰 때 "Error writing dump file: Access is denied." 오류13912정성태4/9/20253785닷넷: 2330. C# - 실행 시에 메서드 가로채기 (.NET 5 ~ .NET 8)113911정성태4/8/20254605오류 유형: 949. WinDbg - .NET Core/5+ 응용 프로그램 디버깅 시 sos 확장을 자동으로 로드하지 못하는 문제13910정성태4/8/20254231디버깅 기술: 219. WinDbg - 명령어 내에서 환경 변수 사용법13909정성태4/7/20256386닷넷: 2329. C# - 실행 시에 메서드 가로채기 (.NET Framework 4.8)113908정성태4/2/20256699닷넷: 2328. C# - MailKit: SMTP, POP3, IMAP 지원 라이브러리13907정성태3/29/20256966VS.NET IDE: 198. (OneDrive, Dropbox 등의 공유 디렉터리에 있는) C# 프로젝트의 출력 경로 변경하기13906정성태3/27/20256789닷넷: 2327. C# - 초기화되지 않은 메모리에 접근하는 버그?113905정성태3/26/20256975Windows: 281. C++ - Windows / Critical Section의 안정화를 위해 도입된 "Keyed Event"113904정성태3/25/20255960디버깅 기술: 218. Windbg로 살펴보는 Win32 Critical Section113903정성태3/24/20254615VS.NET IDE: 197. (OneDrive, Dropbox 등의 공유 디렉터리에 있는) C++ 프로젝트의 출력 경로 변경하기13902정성태3/24/20255441개발 환경 구성: 742. Oracle - 테스트용 hr 계정 및 데이터 생성113901정성태3/9/20255820Windows: 280. Hyper-V의 3가지 Thread Scheduler (Classic, Core, Root)13900정성태3/8/20257282스크립트: 72. 파이썬 - SQLAlchemy + oracledb 연동13899정성태3/7/20254622스크립트: 71. 파이썬 - asyncio의 ContextVar 전달13898정성태3/5/20255417오류 유형: 948. Visual Studio - Proxy Authentication Required: dotnetfeed.blob.core.windows.net13897정성태3/5/20257136닷넷: 2326. C# - PowerShell과 연동하는 방법 (두 번째 이야기)113896정성태3/5/20257087Windows: 279. Hyper-V Manager - VM 목록의 CPU Usage 항목이 항상 0%로 나오는 문제13895정성태3/4/20256988Linux: 117. eBPF / bpf2go - Map에 추가된 요소의 개수를 확인하는 방법13894정성태2/28/20256473Linux: 116. eBPF / bpf2go - BTF Style Maps 정의 구문과 데이터 정렬 문제13893정성태2/27/20255503Linux: 115. eBPF (bpf2go) - ARRAY / HASH map 기본 사용법13892정성태2/24/20258225닷넷: 2325. C# - PowerShell과 연동하는 방법113891정성태2/23/20255721닷넷: 2324. C# - 프로세스의 성능 카운터용 인스턴스 이름을 구하는 방법113890정성태2/21/20255427닷넷: 2323. C# - 프로세스 메모리 중 Private Working Set 크기를 구하는 방법(Win32 API)113889정성태2/20/20257731닷넷: 2322. C# - 프로세스 메모리 중 Private Working Set 크기를 구하는 방법(성능 카운터, WMI) [1]1 1 2 3 4 [5] 6 7 8 9 10 11 12 13 14 15 ...