Skip to Content
전문가를 위한 파이썬(2판)
book

전문가를 위한 파이썬(2판)

by 루시아누 하말류, 강권학
November 2024
Beginner to intermediate
1064 pages
25h 21m
Korean
Hanbit Media, Inc.
Content preview from 전문가를 위한 파이썬(2판)
825
19
파이썬 동시성 모델
19
.
8
요약
이론을 조금 설명한 후, 이 장에서는 파이썬이 기본적으로 지원하는 다음과 같은
3
대 동시성
프로그래밍 모델을 이용해 스피너를 구현했다.
스레드.
threading
패키지
프로세스.
multiprocessing
패키지
비동기 코루틴.
asyncio
패키지
그러고 나서 실험을 통해
GIL
이 미치는 실제 영향을 조사했다. 스피너 예제를 변경해서 커다
란 정수의 소수 여부를 계산하고, 작동 특성을 관찰했다. 이 실험에서
CPU
위주의 함수는 이
벤트 루프를 중단시키므로 반드시 피해야 함을 알았다.
GIL
문제가 있음에도 스레드 버전은
잘 작동했다. 파이썬이 주기적으로 스레드를 중단시키고, 예제에서는 스레드가 두 개만 있었기
때문이다. 한 스레드는 계산 위주의 작업을 수행하고 다른 하나는 단순히 초당
10
번의 애니메
이션을 수행했다.
multiprocessing
버전은
GIL
문제없이 잘 작동했다. 애니메이션만 수행하
는 프로세스를 새로 만들고 메인 프로세스에서는 소수 검사를 수행했다.
소수 검사를 여러 번 수행하는 다음 예제는
multiprocessing
threading
의 차이를 잘 보여
주었는데, 프로세스를 사용해야만 다중코어
CPU
를 파이썬이 제대로 활용할 수 있음을 알았
다. 파이썬의
GIL
때문에 계산 부하가 많을 때는 스레드 방식이 순차 방식보다 성능이 떨어진다.
파이썬에서 동시성 및 병렬 프로그래밍에 관해 이야기할 때는
GIL
에 관한 얘기가 대부분이지
만,
GIL
의 영향을 과대평가할 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

전문가를 위한 리액트

전문가를 위한 리액트

테자스 쿠마르
고성능 파이썬(2판)

고성능 파이썬(2판)

오현석, 미샤 고렐릭, 이안 오스발트

Publisher Resources

ISBN: 9791169211772