한 줄 요약: 동기는 '직렬적'으로 작동하는 방식, 비동기는 '병렬적'으로 작동하는 방식

'동기(synchronous)'란 무엇일까?

  • 직렬적으로 태스크를 수행하는 방식
  • 즉, 요청을 보낸 후 응답을 받아야지만 다음 동작이 이루어지는 방식이다.
    어떠한 태스크를 처리할 동안 나머지 태스크는 대기한다.
  • 실제로 cpu가 느려지는 것은 아니지만 시스템의 전체적인 효율이 저하된다고 할 수 있다.

 

 

'비동기 (asynchronous)'란 무엇인가?

  • 병렬적으로 태스크를 수행하는 방식이다.
  • 요청을 보낸 후 응답의 수락 여부와는 상관없이 다음 태스크가 동작하는 방식이다.
  • a 태스크가 실행되는 시간 동안 b 태스크를 할 수 있으므로 자원을 효율적으로 사용할 수 있다.
  • 이때, 비동기 요청시 응답 후 처리할 '콜백 함수'를 함께 알려준다
  • 즉, 해당 태스크가 완료되었을 때, '콜백 함수'가 호출된다.

'산대특 > 게임 알고리즘' 카테고리의 다른 글

GameObject.onClick.AddListener()  (0) 2024.02.06
AppleCatch  (0) 2024.02.06
직렬화와 역직렬화  (0) 2024.02.05
디자인 패턴과 싱글톤 패턴  (0) 2024.02.05
Process 와 Thread 그리고 Thread 와 Coroutine  (1) 2024.02.04

+ Recent posts