스레드

Min-Ho Lee·2020년 11월 12일
0

Thu_Nov_12
.
.
.
전 시간에 프로세스에 대해 알아봤다.

다시 한 번 정리하자면 프로세스란 어떠한 프로그램이 실행돼서
돌아가가고 있는 상태, 즉 컴퓨터가 어떤 일을 하고 있는 상태를
프로세스라 한다.

Thread(스레드)

자 그럼 스레드란 무엇일까?

한 프로세스 내에서도 여러 갈래의 작업들이
동시에 진행될 필요가 있다.

그리고 이 갈래를 스레드라고 부른다.

예를들어 자동차를 만드는 프로세스가 진행중이라고 해보자.

자동차를 만드는 프로세스 안에서도 바퀴를 만드는일, 핸들을 만드는 일,
브레이크 장치를 만드는 일 이렇게 여러개의 작업이 이루어진다.

이 작업 하나하나를 스레드라고 한다.

프로세스는 컴퓨터의 자원을 분할해서 쓰지만,
스레드는 프로세스마다 주어진 전체 자원을 함께 사용한다.

당연히 속도와 효율면에서는 좋겠지만 단점도 존재한다.

프로세스 안에서 공유되는 변수에 두개의 스레드가 건드린다면 Error가 난다.

물론 이를 방지하기 위해 도구나 프로그래밍 방식이 존재한다.

Lambda, Closure, Functional Programming 등이 있다.

profile
🐇 Rabbit can take a rest, but 🐢 turtle can't

0개의 댓글