
⭐Thread(스레드) 💜thread(스레드) > 프로그램 하나에서 동시에 여러 개를 처리하는 단위를 의미한다. → 예를 들어 하나의 게임에서 여러 접속자가 있다면 접속자 한 명 한 명을 thread라 한다. → 가상 머신(JVM)을 통해 어떤 스레드(thread

⭐join > thread.join() : 해당 thread가 끝날 때까지 대기하라는 의미를 가진다. → 위 코드에서 join() 가 실행되면 t스레드가 종료될 때까지 main스레드가 기다린다. 여기서 기다린다는 의미는 main이 join을 만나면 NOT RUNNAB

⭐️wait, notify → 위에서 동기화를 해도 컨트롤이 되지 않는다. 상호 배제는 되지만 원하는 순간에 원하는 메소드를 불러 내기는 어렵다. 이럴 때, wait 와 notify 를 사용한다. → wait( ) : wait를 만나면 락을 풀고 실행 불가 상태로

interrupt : 실행 불가 상태에 있는 애들을 대기열로 돌아오게 한다.(Not runnable -> Runnable)→ 실행 불가 상태에 있는 애들을 대기열로 돌리는 문법적인 방식 : 예외를 발생시켜서 한다.→ 실행 불가 스레드 일때만 InterruptedExce