pythonic - GIL: global interpreter lock

Kenneth·2021년 1월 10일
0

pythonic

목록 보기
6/6
post-custom-banner

cpython에서 thread 활용에 앞서 반드시 알아야 할 GIL의 개념 자체는 이해하기 쉬운 편입니다.

python interpreter는 완전히 thread-safe하지 않습니다. python이 90년대에 처음 등장했을때, 대다수의 cpu는 single-core-single-thread였고, 작업은 cpu보다는 io쪽에 bound가 걸렸습니다. 그렇기에 그 당시에는 한 python interpreter process에서 하나의 thread만 실행한다 하더라도 그런 환경이 더 일반적이었고, 개별 python object의 접근을 제어하기보다는 thread 레벨에서 global interpreter lock을 통해 thread간의 contention을 원천적으로 차단하는 방법을 채택했습니다.

python wikipython docs에서 더 자세한 내용을 읽어보실 수 있습니다. 한글 자료 중에서는 이 블로그 글이 도움됐습니다.

profile
개발자 + @
post-custom-banner

0개의 댓글