Reference count (1) 썸네일형 리스트형 [Python] GIL (Global Interpreter Lock) 파이썬에서 멀티쓰레딩과 같이 동시성, 병렬 작업 등에 대한 공부를 하다보면 항상 나오는 단어가 있다. 바로 GIL 이다. GIL 은 Global Interpreter Lock 의 줄임말로 파이썬 인터프리터의 동작과 관련된 용어이다. GIL 이 무엇인지 대략적으로는 알고있지만 자세하게, 그래서 실제 멀티 쓰레딩, 멀티 코어에서 어떻게 동작하는지는 알지 못해서 이번 기회에 좀 더 알아보려 한다. 1. GIL GIL 은 일종의 mutex 이다. 인터프리터에서 thread-safe 하지 않은 객체들에 대한 접근을 막기위해 사용하는 쓰레드 mutex 이다. 인터프리터에서 한 번에 하나의 쓰레드만 실행하도록 하여 쓰레드들 간의 동작에 동기화를 맞추도록 하는 동작 원리이다. 파이썬의 경우 CPython 인터프리터가 .. 이전 1 다음