Can’t we get rid of the Global Interpreter Lock?
GIL (на русском)
Understanding the Python GIL
Python threads and the GIL
concurrent.futures — Launching parallel tasks
PyMOTW. concurrent.futures — Manage Pools of Concurrent Tasks
A quick introduction to the concurrent.futures module
Python - paralellizing CPU-bound tasks with concurrent.futures
concurrent.futures in Python 3
How many processes should I run in parallel?
How many threads is too many?