- [Error Note] 25. InterruptedException : 쓰레드 실행 오류2024년 05월 17일
- Song hyun
- 작성자
- 2024.05.17.:34
728x90반응형[Error Note] 25. InterruptedException : 쓰레드 실행 오류
*함께 보면 좋을 글
https://whatsthatsound.tistory.com/184
멀티 쓰레딩을 이용해 백그라운드 서비스 파일을 작성하던 중,
계속해서 'InterruptedException'이 발생하는 것을 알 수 있었다.
해당 오류가 계속 발생하는 지점을 살펴보니, "Thread.sleep()" 구문이 적힌 부분이었다.
마감이 임박한 팀 프로젝트였기 때문에, 해당 오류를 정면돌파하기에는 남은 시간이 적어(ㅜㅜ) 다른 방식으로 Thread.sleep()을 사용하게 되었다.
이후에 선생님이 알려주신 오류를 기록하기 위해 글을 남긴다!
InterruptedException은 "인터럽트Interrupt"라는 개념과 관련이 깊다.
인터럽트는 현재 수행 중인 작업을 잠시 중지하고, 긴급하게 해야 할 작업을 처리할 때 발생한다.
-> 한 마디로 실행중인 프로그램의 일반적인 흐름을 잠시 중지시키고, 긴급하게 해야할 특정 작업을 처리한 뒤, 다시 원래의 프로그램 실행 흐름으로 돌아가게 하는 것이다!
Java에서는 .interrupt()를 통해 스레드를 interrupt 상태로 만들수 있다.
InterruptedException은 그 interrupt 상태와 밀접한 관련이 있는 예외라고 보면 되겠다.
-가령 sleep()으로 쓰레드가 호출 or 대기 상태에서, 인터럽트 상태가 true가 된다거나
-쓰레드의 인터럽트 상태가 true 일 때, 작업 쓰레드에 제어권이 넘어와 sleep() 메서드가 호출되었을 때
=> 이럴 때 InterruptedException이 발생한다.
728x90반응형'Error Note' 카테고리의 다른 글
[Error Note] 27. Java socket 오류: Socket closed (0) 2024.05.23 [Error Note] 26. GitHub 계정 정보 연동 오류: 커밋 현황 연동 안 됨 (0) 2024.05.20 [Error Note] 24. 쓰레드 동시 실행 오류 : Illegal Thread State Exception (0) 2024.05.16 [Error Note] 23. Git: Error: failed to push some refs to (0) 2024.05.16 [Error Note] 22. 얕은 복사 오류 (0) 2024.05.10 다음글이전글이전 글이 없습니다.댓글