Python will get true threading support with the removal of the GIL (Global Interpreter Lock) in 3.13 (now available in the beta as an experimental option).

The GIL has long crippled Python’s threading capabilities, but will be getting true parallelism with the implementation of PEP 703.

What are you gonna do with real threads? 🤔

  • pelya
    link
    23 months ago

    The same exact thing I do with multiprocess Python, I’m not going to update all of my code.

    Multiprocess approach is arguably more robust, you can’t corrupt memory from another thread, because the only point of interaction you have with your other rpocesses is queue and semaphore.

    • @QutorialOP
      link
      33 months ago

      But with multiprocessing you’re paying extra cycles to serialize and deserialize with those data structures (plus the added cost of storing copies in multiple places), and processes are much heavier to spin up…

      • pelya
        link
        13 months ago

        Yeah, there is overhead. It’s not so critical for Python, because I am using it for scripting and prototyping, and when I need performance, I rewrite critical code parts in C++.

  • @[email protected]
    link
    fedilink
    13 months ago

    Just downloaded the free-threading RC version via pyenv. Looking forward to taking it for a spin.