데이터를 해석하거나 락을 걸 때 발생하는 파이썬의 부가비용이 없다. 운영 체제에서 직접 바
이트를 다룬다. 따라서 이 방식이 가장 빠른 통신 방식이다.
9.5.8
mmap
을 플래그로 사용하기 (
2
)
앞의
mmap
의 결과가 가장 좋지만, 가장 비용이 많이 드는 소수에 대해서는 단순한 풀 방식으로
돌아가야만 한다. 목표는 내부 루프에서 빨리 빠져나올 수 없는 상황이 있음을 인정하고 관련
없는 비용을 최소화하는 것이다.
이 절은 조금 더 복잡한 해법을 제시한다. 우리가 본 플래그를 기반으로 하는 모든 방식을 마찬
가지로 변경할 수 있지만, 여전히
mmap
을 사용한 결과가 가장 빠를 것이다.
앞의 예제에서는
CHECK
_
EVERY
를 사용했다. 이는
check
_
next
지역 변수의 값을 감시하고, 감
소시키며, 조건에 맞는지를 판단해야 한다는 뜻이다. 이런 연산은 반복할 때마다 약간의 시간
을 추가한다. 큰
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.