Thanks Paul, for clearing up this debate we have been having, viz:
Processes != threads
I was of that view. I have spent most of the day delving into this and have come to the conclusion that Python IS IN FACT threading within the process, on openBSD. I also posted to the openBSD list and got a very useful reply to the effect that the openBSD OS knows nothing about threads. So, I concluded and discovered that Python acts as a VM, performing its' own internal thread management. I understand from the configuration build that it will try and use OS thread functions if available, or not, as the case may be.
TEST: If you see the "task # done"'s come up out of numerical order...
I ran the test as you suggested and lo and behold, I get exactly that!
For OpenBSD, are you building Python from scratch? Have you tried a port/package?
Built from scratch, considered a package, but there is not yet a V2.1.3 available. We have been runing this environment in production for several months, and on openBSD for 3 months or so. This all started because of some serious performance issues when we installed a new major product into our Zope envt. However, when we decided to stop/start the Zopes (5 ZEO's), the performance issue went away. Which now leads to a whole other bottle of fish....
Hope this helps... Paul.
Yep, heaps! One should always try and learn something new every day... thanks, Graham