가취공부하자

Concurrency(동시성)과 Parallelism(병렬성) 차이 본문

TIL

Concurrency(동시성)과 Parallelism(병렬성) 차이

keepGGoing 2024. 8. 29. 22:08

Concurrency와 Parallelism은 둘 다 여러 작업을 동시에 수행하는 것을 다루는 개념이지만, 의미에서의 차이가 있다.

Concurrency(동시성)

논리적으로 동시에 진행되는것이다.

병렬로 진행되는 것처럼 보이지만, 실제로는 짧은 시간 동안 서로 번갈아 가며 실행된다.

A작업 -> B작업 -> A작업이 실제론 순서로대로 실행되지만, 동시에 실행되는 것처럼 보이는 것.

싱글코어,멀티코어에서 가능

 

Parallelism(병렬성)

물리적으로 동시에 진행되는 것이다.

실제로 다수의 작업이 동시에 실행된다.

멀티코어에서만 가능

 

동기화 문제는 Concurrent 한 task 사이에서 발생한다.

동기화 문제는 여러 프로세스에서 공유된 자원에 접근하려 할 때 발생한다.

예시) A 작업이 공유자원 읽음 -> B작업 공유자원 읽음 - > A작업이 공유자원 수정 -> B작업공유자원 수정

 

'TIL' 카테고리의 다른 글

[영어] 오픽 문제 유형  (6) 2024.11.07
[영어] 오픽 준비 방법  (0) 2024.10.13
나만의 아이콘(ico) 만드는 방법  (0) 2024.06.25
ADsP 자격증 전공자 공부방법 정리  (0) 2024.03.17
개발 블로그 쓰는 방법  (0) 2024.01.14