Computer Science

동기방식 (Sync.)과 비동기방식 (Async)

jwkane 2024. 4. 1. 23:37

1. 동기방식 (Sync.)

동기의 사전적의미 → “동시에 일어난다”

프로그래밍에서 동기 의미→ 작업이 순차적으로 진행되는 것

즉, 한 작업이 시작되면 해당 작업이 완료되고 다음 작업이 시작됨

동기 방식 특징

호출한 함수 또는 작업이 반환 될 때까지 대기하는 동안 실행 흐름이 차단

동기 방식은 일반적으로 간단하고 직관적인 코드를 작성하기 쉬움

하지만 여러 작업이 동시에 실행되어야 하는 경우,

각 작업의 완료를 기다리는 동안 시간이 소요되기에

전체 프로세스의 성능 저하 될 수 있음!

또한 한 작업이 지연되면 다른 작업들도 모두 지연되는 문제 발생할 수 있음

 

 

2. 비동기방식 (Async)

비동기 사전적 의미 → ‘동시에 일어나지 않는다’

프로그래밍에서 비동기는 작업이 독립적으로 실행되며,

작업의 완료 여부를 기다리지 않고 다른작업을 실행 할 수 있는 방식을 의미함

즉 비동기 방식은 작업이 시작되면 해당 작업이 완료될 때까지 기다리지 않고 다음 코드를 실행 할 수 있습니다.

비동기 방식은 주로 I/O작업이나 네트워크 요청과 같이 시간이 오래 걸리는 작업에 유용함

이러한 작업을 비동기적으로 처리하면, 프로그램은 작업이 완료되기를 기다리는 동안 다른 작업을 처리할 수 있으므로 전체적인 성능이 향상됨