Zettelkasten

Cooperative Concurrency(협력적 동시성 모델)

·수정 2026.04.23·수정 2

요약

  • 스케줄러가 맘대로 중단하지 않고 각 작업이 스스로 양보 yield 해야만 다른 작업이 실행되는 모델

본문

  • 작동 방식
    • 작업 A가 실행
    • 대기 지정 및 yield 후 제어권 반환
    • 작업 B가 실행
  • 이런 방식의 동시성 모델로는 ascyncio, gevent등이 있음
  • 반대 개념 Preemptive concorrency(선점형 동시성 모델)이 있음
    • 장점: 데드락/경쟁 완화, 컨텍스트 전환 비용 감소, 실행 동작을 예측할 수 있음
    • 단점: 개발자의 역량에 따라 한 작업이 이벤트 루프 독점 가능