Der „Global Interpreter Lock“ (GIL) ist ein Mechanismus, der in bei Interpretern benutzt wird, um die Ausführungen von Threads zu synchronisieren, so dass nur jeweils ein Thread zur gleichen Zeit ausgeführt wird. Ein Interpreter, der einen GIL benutzt, kann also nur einen Thread zur gleichen Zeit ausführen, auch wenn er auf einem Mehrprozessorsystem läuft. Außer Cpython benutzt beispielsweise auch Ruby-MRI einen GIL.
Gil in Python bedeutet:
non I/O execution
I/O
non I/O execution
GIL acquired
GIL released
I/O