On my machines (one Py2.4 on WinXP, one Py2.3.4 on RH9.0) I don't
see this behaviour.  Across about fifty runs each.

Thanks for trying this.

One thing you might try is experimenting with sys.setcheckinterval(),
just to see what effect it might have, if any.

That does seem to have an impact. At 0, the problem was completely reproducible. At 100, I couldn't get it to occur.


It's also possible there were some threading bugs in Py2.2 under Linux. Maybe you could repeat the test with a more recent version and see if you get different behaviour. (Not that that proves anything conclusively, but at least it might be a good solution for your immediate problem.)

2.3 (on the same machine) does seem better, even with setcheckinterval(0).

Thanks for your suggestions.

Can anyone with knowledge of Python internals comment on these results?
(Look earlier in the thread for details. But basically, a very simple
program with the thread module, running two threads, shows that on
occasion, one thread finishes and the other never runs again. python2.3
seems better, as does python2.2 with  sys.setcheckinterval(100).)

Jack
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to