[Martin v. Loewis] > ... > You didn't ask google for _POSIX_SEMAPHORES, right? The first hit > brings you to > > http://www.opengroup.org/onlinepubs/7908799/xsh/feature.html > > _POSIX_SEMAPHORES > Implementation supports the Semaphores option. Good catch! I didn't get a hit from the Open Group's SUS search box: http://www.opengroup.org/onlinepubs/7908799/ > A quick check shows that both Solaris 8 and glibc 2.2 do indeed define > the symbol. Cool. > ... > For glibc 2.1, semaphores have been reimplemented; they now provide > FIFO wakeup (sorted by thread priority). Same for mutexes: the > highest-priority oldest-waiting thread will be resumed. My impression is that some at Zope Corp would find it hard to believe that works. >> do { >> ... call the right one ... >> } while (status < 0 && errno == EINTR); > Shouldn't EINTR check for KeyboardInterrupt? Sorry, too much a can of worms for me -- the question and the possible answers are irrelevant on my box <wink>. Complications include that interrupts weren't able to break out of a wait on a Python lock before (so you'd change endcase semantics). If you don't care about that, how would you go about "checking for KeyboardInterrupt"? Note thread.c's initial comment: /* Thread package. This is intended to be usable independently from Python. That's why there are no calls to Python runtime functions in thread_pthread.h (etc) files now; e.g., they call malloc() and free() directly, and don't reference any PyExc_XXX symbols. That's a lot to overcome just to break existing code <wink>.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4