From: Gunter <re...@bu...> - 2008-12-15 13:30:21
|
New submission from Gunter <gun...@a3...>: This naive program creates 10000 threads. More than 2000 of them are not executed completely: ----- import thread, time cnt_a = cnt_b = 0 def test(): global cnt_a, cnt_b time.sleep(1) cnt_a += 1 time.sleep(1) cnt_b += 1 i = 10000 while i: i -= 1 thread.start_new_thread(test, ()) time.sleep(100) print cnt_a, cnt_b ---- The program prints two different numbers not equal to 10000. Tested on Linux, Jython2.1, java1.5.0 and Windows, Jython2.5a3, jdk1.6.0_01. ---------- components: Core messages: 3920 nosy: gunter.bach severity: major status: open title: Many threads: unpredictable results versions: Deferred _______________________________________ Jython tracker <re...@bu...> <http://bugs.jython.org/issue1203> _______________________________________ |