수업/JAVA

230609 공유데이터, 네트워크

보더96 2023. 6. 9. 17:18

synchronized :  여러개의 스레드가 한개의 자원을 사용하고자 할 때, 현재 데이터를 사용하고 있는 해당 스레드를 제외하고 나머지 스레드들은 데이터에 접근 할 수 없도록 막는 개념.
(공유되는 다른 스레드에게cpu를 뺏기지 않기 위해 사용)

 

stack - class

heap - method()

1111111111111111
11111111111111

 

 

Thread 상속
Thread 상속

 

스레드가 가지고 있는 메서드
join()  ->  다른 스레드가 죽을때까지 기다리는것
sleep() -> 

공유되는 객체
wait() ->  현재 공유객체를 사용하는 스레드-> 일시중지한다. 

notify(); -> 공유 객체를 중에서  wait사용하는 스레드를 깨운다 

wait으로 멈추고 notify로 멈춘 스레드를 깨운다.
pop스레드에 wait()을 했을경우 멈추는 애들은 파란색

 

 

우리가 알아야 하는것은 4 Layer

 

연결이 되어있어야함    ex) 전화
연결이 안되어있어도 됨       ex ) 편지   -->   데이터를 잃어버릴수 있다.

 

숫자대로 Hello 데이터가 송수신된다.

 

 

★★★TCPClient, TCPServer 제작★★★

채팅system 확인하기