A possible bug in python threading/time module?
vm_usenet at yahoo.com
Thu Jul 3 23:41:26 CEST 2003
> If you run "enough" threads, chances are high you'll eventually run into a
> platform thread bug on any platform -- but into different platform bugs on
> different platforms. You didn't say which OS or platform thread library you
> were using, and those are probably the only things that matter.
> Here's a simplified and generalized minor rewrite of the above, with a
> comment about what happens under Win2K and 2.3b2. I've got no interest in
> chasing it down, since it's hung in the bowels of a Windows DLL and there's
> no evidence of a Python bug:
> import time
> import threading
> # One thread hung at the end on Win2K at N == 2011.
> # No problem if N < 2011.
> N = 2011
> sem = threading.Semaphore(N)
> class MyThread(threading.Thread):
> def __init__(self):
> def run(self):
> for i in range(2*N):
I tried it on Windows 2000 and XP.
I guess it could be a platform-specific bug, but it still disturbs me
because I later programmed the same thing in C - and it worked
perfectly. It's a long-shot, but I guess somewhere the bug is caused
due to a misuse by the python runtime (or perhaps an inefficient use)
of the platform-specific threading facilities...
More information about the Python-list