|
Boost-Build : |
From: David Abrahams (dave_at_[hidden])
Date: 2006-08-31 10:53:20
[Taking this back to the boost.build list where it belongs]
"MANSION, James, GBM" <James.MANSION_at_[hidden]> writes:
> # Even where Python itself uses pthreads, it never allows
> # extension modules to be entered concurrently (unless they
> # explicitly give up the interpreter lock). Therefore,
> # extension modules don't need the efficiency overhead of
> # threadsafe code as produced by <threading>multi, and we
> # handle libpthread along with other libraries here.
>
> Is that absolutely right? I mean, errno is sometimes different if
> you are a single-threaded or multi-threaded build,
In what way is errno different?
> and presumably the libc is multithreaded, so it conceivably the
> extension code could be run from a thread other than the main
> thread,
No, Python controls all the calls it makes into the extension code and
ensures they're on the main thread.
> and call functions that adjust an errno it can't see.
Sorry, I don't follow.
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk