1204
Comment:
|
291
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
In CPython, the '''global interpreter lock''', or '''GIL''', is a mutex that prevents multiple native threads from executing Python bytecodes at once. This lock is necessary mainly because CPython's memory management is not thread-safe. (However, since the GIL exists, other features have grown to depend on the guarantees that it enforces.) CPython extensions must be GIL-aware in order to avoid defeating threads. For an explanation, see [http://docs.python.org/api/threads.html Global interpreter lock]. The GIL is controversial because it prevents multi-threaded CPython programs from taking full advantage of multiprocessor systems in certain situations. Note that potentially blocking or long-running operations, such as I/O, image processing, and NumPy number crunching, happen ''outside'' the GIL. Therefore it is only in multi-threaded programs that spend a lot of time inside the GIL, interpreting CPython bytecode, that the GIL becomes a bottleneck. ---- One of IronPython's delights is that it works around the GIL; IronPython-based applications can be fully-threaded in the sense that they properly exploit multi-core CPUs. [Mention place of GIL in StacklessPython.] |
My name is Carin from Rohrbach doing my final year engineering in Industrial and Labor Relations. I did my schooling, secured 94% and hope to find someone with same interests in Basket Weaving.<<BR>> <<BR>> Look at my weblog - [[http://hackingtwitterpasswords.blogspot.com|hack twitter]] |
My name is Carin from Rohrbach doing my final year engineering in Industrial and Labor Relations. I did my schooling, secured 94% and hope to find someone with same interests in Basket Weaving.
Look at my weblog - hack twitter