Boost logo

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