2009-10-30 4 views
0

언젠가는 그렇게 읽었으므로 항상 내 스레드의 이름을 지정하는 습관이 있었지만 스레드 이름을 보여준 디버깅 도구를 사용한 적이 전혀 없었습니다..NET에서 이름 스레드가 필요한 이유는 무엇입니까?

언제 스레드를 유용하게 사용할 수 있습니까? 실제로 스레드의 이름을 볼 수 있습니까? 일부 프로파일 링 도구에 스레드를 지정해야합니까? 어떤 도구?

답변

4

최소한 스레드의 상태를 조사 (또는 전환 또는 일시 중단)해야 할 때 신속하게 디버깅을 수행 할 수 있습니다. 또한 this SO question에있는 몇 가지 답변을 참조하십시오.

Visual Studio has had a threads window at least since VS2003. MSDN 페이지에는 스레드 창을 두 번 사용하는 기능이 있습니다.

+0

디버깅 중일 때 스레드 이름이 보입니까? – JamesBrownIsDead

+0

디버거에 문제가 발생하여 스레드 창을보고있을 때 스레드의 이름이 표시됩니다. –

0

마찬가지로 디버깅 할 때도 스레드 이름을 사용하지 않습니다. 나는 Threads 윈도우가 있다는 것을 알고 있으며, 나는 그것을 매번 사용했다. 그리고 내가 그것을 사용했을 때, 나는 내 스레드에 이름을 붙 였기 때문에 기쁩니다.

즉, 이벤트 뷰어, 로그 파일, 콘솔 등에 메시지를 로깅 할 때 스레드의 이름 (System.Threading.Thread.CurrentThread.Name)을 사용합니다. 특히 오류의 경우에는 정확히 무슨 일이 벌어지고 있는지에 대한 그 특별한 통찰력. 스택 트레이스를 사용하여 코드의 오류 위치를 찾아 내고 스레드 이름을 스택 추적에 사용하여 일부 컨텍스트를 추적합니다.