본문 바로가기

AdvancedJava

[3일차]쓰레드 쓰레드


Thread


Process


메로리나 cpu와 관련한 자원들을 쫙 모아놓은 애가 process



그 중에서 코드를 한줄 한줄 실행하고 있는애가 쓰레드 이다. 쓰레드 이다.



그런데 하나를 작업하다 노는 경우가 생겨서 나온 개념이 멀티 프로세스이다. 


그러다 보니까 하나의 프로그램 안에서도 그런 일이 일어나면 안되는거다. 


그래서 Thread라는 개념이 만들어 진거다. 



Process간에는 서로 다른 자원을 접근하지 못하게 하고 있다. 

그런데 Thread 는 ? 



자원을 서로 공유한다. 


결국 Process는 회사고 Thread는 일하는 사람이다. 


뭐하는 회사야 하지만 일하는 주체는 사람.


같이 일하는 사람끼리 프린트 공유해서 쓰는 것처럼. 쓰레드도 자원을 공유한다. 


이와 같은 개념이다. 



////////////////////////////

객체 와 쓰레드는 전혀 다른 얘기 .

자바에서 실행할 코드를 담고있는게 Runnable


코드와 쓰레드는 별개 이 코드를 A가 실행할 수 있고, B가 실행할 수도 있다.