이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 45249|회답: 1

[출처] .NET/C# 스레드가 예외 정보를 포착합니다

[링크 복사]
게시됨 2020. 9. 23. 오후 7:59:52 | | | |
최근에 스레드 예외를 얻는 방법에 관한 면접을 봤는데, 틀리게 답했어요. 제가 말한 스레드 밖에 'try catch'라고 쓰면 예외가 있기도 합니다.

과거에 winform 소프트웨어 개발을 할 때 자주 스레드를 사용했고, 예외 정보를 얻는 방법은 두 가지였습니다:

  • 스레드에서 try catch를 쓰고, delegate를 호출해 예외 정보를 소프트웨어 로그 텍스트 박스에 출력합니다.
  • 스레드에서 try catch를 작성하고, 로그 프레임워크를 호출한 뒤 파일에 쓰세요.


또한 'try catch'라는 글을 스레드 밖에 쓰지 않았는데, 왜 틀리게 답했을까요?

테스트 코드:



스레드 외부에서는 예외 정보가 얻지 못했고, 메인 스레드는 중단되었습니다, "OK"는 인쇄되지 않았다.

메인 스레드에서 스레드의 예외 정보를 얻고 싶다면 어떻게 해야 하나요? 이벤트를 사용할 수 있는데, 사실 이벤트는 대표 역할을 합니다.

행사 튜토리얼:

자세한 내용은 .net/c# 이벤트에 관한 것입니다
https://www.itsvse.com/thread-4803-1-1.html

코드는 다음과 같습니다:



(끝)




이전의:asp.net 코어 소스 코드 주소
다음:JS는 화면 크기 캐러셀 그래프에 적응합니다
 집주인| 게시됨 2021. 4. 14. 오후 2:55:15 |
Task를 사용하는 예외는 처리되지 않으며 메인 스레드에 영향을 주지 않습니다



스레드 예외가 처리되지 않으면 메인 스레드가 크래시됩니다



테스트 코드:



면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com