Update README.md

This commit is contained in:
sedex 2020-12-31 17:48:58 +00:00
parent c16d393f43
commit 41260cf420
1 changed files with 1 additions and 1 deletions

View File

@ -4,6 +4,6 @@ Learning outcomes from reading the book 'Learning Concurrency in Python' by Elli
# Brief Preamble
Python has several implementations that each handle concurrent programming in their own language specific way. Some popular examples are CPython (C), PyPy (Python), Jython (Java) and IronPython (.NET). The C and Python implementations have a thread locking mechanism included called the Global Interpreter Lock (GIL). The purpose of this mechanism is to stop multiple threads from executing code in parallel. This creates thread-safe programs by avoiding race conditions and deadlock.
Python has several implementations that each handle concurrent programming in their own language specific way. Some popular examples are CPython (C), PyPy (Python), Jython (Java) and IronPython (.NET). The C and Python implementations have a thread locking mechanism included called the Global Interpreter Lock (GIL). The purpose of this mechanism is to stop multiple threads from executing code simultaneously. This creates thread-safe programs by avoiding race conditions and deadlock.
This GIL has caused numerous debates about the performance of the Python lanuguage when it comes to multithreaded programming, because it essentially reduces all programs to using a single thread. This book teaches us about threads, processes concurrency, parallelism and asynchronicity in Python implementations that use the GIL, and how we can write performant code that takes advantage of the benefit these concepts bring.