자바 강좌를 보다가 Thread의 sleep과 yield 차이가 궁금해졌어요.
yield는 같은 우선순위의 스레드에만 실행 기회를 양보하고, 낮은 우선순위에는 양보하지 않는다는 설명이 있더라고요.
그런데 어떤 책에는 같은 우선순위와 낮은 우선순위 스레드 모두에게 양보한다고 나와 있어 어느 쪽이 맞는지 궁금합니다.
그리고 wait(), yield(), sleep(), join()이 각각 어떻게 다른지도 알고 싶어요.
스레드를 깨우는 notify(), interrupt(), interrupted()의 차이도 설명 부탁드립니다.
Thread 클래스 메소드 차이가 궁금해요
아놀드 2026.09.17 댓글 4
조히 2026.09.17
급하게 쓰다 보니 제가 헷갈렸네요. 죄송합니다.
미라 2026.09.17
제가 말한 건 우선순위가 낮아도 CPU를 사용할 수 있다는 의미였어요. ^^
아련나래 2026.09.17
강좌 내용을 다시 보니 제가 반대로 이해했네요. 제가 본 책에는 그렇게 적혀 있어서 혼란스러웠어요.
그럼 스레드 우선순위는 스케줄러에 따라 달라지는 건가요? 답변 늘 감사합니다.
칸나 2026.09.17
‘yield는 같은 우선순위 스레드에게만 양보된다’고 적힌 부분이 어디인지 알려주시면 바로 고칠게요. ^^