의문점 공부하기/📌 Java

📌 thread run()과 thread start()의 차이가 뭘까?

아리빠 2023. 7. 28. 14:03

thread run()과 thread start()는 둘 다 스레드(Thread)를 실행하는 메서드..!

그러나 차이점은 존재!

 

thread run() :

스레드를 직접 실행하는 메서드

이 메서드를 호출하면 현재 스레드에서 run() 메서드가 실행된다 

스레드가 별도의 실행 흐름을 가지지 않고 현재 스레드에서 실행

 


 

thread start():

스레드를 시작하는 메서드

이 메서드를 호출하면 새로운 스레드가 생성되고, 해당 스레드에서 run() 메서드가 실행

스레드가 별도의 실행 흐름을 가지며, 동시에 여러 스레드가 실행될 수 있다.

 

 thread run()은 스레드를 직접 실행하는 반면,  thread start()는 새로운 스레드를 생성하여 실행하는 차이가 존재!!!