01-08-13 11.56, skrev Nick Ing-Simmons p� [EMAIL PROTECTED] f�ljande:

> It almost certainly does NOT (yet) - it almost certainly should.
> The problem being that I still don't really "grok" clone and
> PerlIO is multi-level. clone-as-fork suggests that fds at least should
> be shared. But equally stdio buffer parts should not be.
> The issue is how to implement PerlIO so that warn/die can
> PerlIO_printf(PerlIO_stderr(),...) during the exit cleanup
> process, but still get "expected" semantics for clones.

Why do we need seperate stdio? Isn't STDIO shared between forks()?

> The issue is further muddled by my not yet grasping the "arena" issues
> with clones. PerlIO is using SV * as dynamic buffer and something
> in cloned state frees those - it may be a simple REFCNT botch though...
> 

The problem is that a SV* created in one interpreter should never be used in
a different interpreter*. So you should let perl_clone clone the SV* on a
clone. We have seperate set of arenas for different clones.

-- 
Arthur

Reply via email to