먼저 생활 비유
한 집을 함께 쓰는 룸메이트
거실과 냉장고는 공유하지만 각자의 가방과 할 일 목록은 따로 있는 것과 같습니다.
2.2 · 프로세스와 동시성
같은 프로세스의 두 스레드는 왜 서로 영향을 줄 수 있을까요?
스레드는 코드·전역 데이터·힙·파일을 함께 쓰지만, 실행 위치와 스택은 각자 가집니다.
먼저 생활 비유
거실과 냉장고는 공유하지만 각자의 가방과 할 일 목록은 따로 있는 것과 같습니다.
컴퓨터 예제로 바꾸기
sharedList.add(item);목록은 힙에 있어 함께 보입니다. 함수의 지역 변수는 각 스레드 스택에 있어 보통 서로 섞이지 않습니다.
지금 일어나는 변화
모든 스레드가 같은 함수와 열린 파일을 사용할 수 있습니다.
이 그림에서 기억할 한 문장
공유는 통신을 쉽게 하지만 동시에 수정할 때 충돌할 가능성도 만듭니다.
현재 상태
30초 확인 문제
일반적으로 스레드마다 따로 있는 것은?
처음 보는 용어 두 개
이 절을 다 읽었다면
공유는 통신을 쉽게 하지만 동시에 수정할 때 충돌할 가능성도 만듭니다.