[Python-Dev] The endless GIL debate: why not remove thread support instead?
Guido van Rossum
guido at python.org
Sat Dec 13 17:14:57 CET 2008
Yes, this is what threads were designed for. As an abstraction to have
multiple "threads of control" on a *single* processor (in a single
process). The whole multi-core business came decades later. (Classic
multi-processors have something called threads too, but they, too,
came later than the original single-core-single-CPU thread concept,
and often threads on those systems have properties that don't match
how threads work on modern multi-core CPUs.)
On Sat, Dec 13, 2008 at 5:32 AM, Michael Foord
<fuzzyman at voidspace.org.uk> wrote:
> Lennart Regebro wrote:
>> On Fri, Dec 12, 2008 at 02:13, Sturla Molden <sturla at molden.no> wrote:
>>> I genuinely think the use of threads should be discouraged. It leads to
>>> code that are full of bugs and difficult to maintain - race conditions,
>>> deadlocks, and livelocks are common pitfalls.
>> The use of threads for load balancing should be discouraged, yes. That
>> is not what they are designed for. Threads are designed to allow
>> blocking processes to go on in the background without blocking the
>> main process. This, they are very useful for. Removing thread support
>> would therefore be a very big mistake. It's needed, it has it's uses,
>> just not the one *you* want.
> That's an interesting assertion about what threads were designed for. Do you
> have anything to back it up?
> Python-Dev mailing list
> Python-Dev at python.org
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-Dev