Hi Aurelien, On Fri, May 12, 2006 at 10:24:42AM +0200, Aur?lien Camp?as wrote: > Just a note there : the constraint solver doesn't really need thread > cloning. It's the framework that makes possible modular integration of > constraint solving and logic programming that needs it.
I was about to ask precisely if the operation I described here makes sense from your point of view. That's basically what you need, isn't it? > Applevel modules are the responsibility of their implementors : if > they contain shared global mutable state, then sharing them makes them > thread-unsafe and unsuitable for use in comp. spaces. But that's > life. > > well, I cannot but ask : would it be possible to be able to clone > these anyway ? It's part of the experimentation that we'll need. They would be cloned if we go for the approach that all objects *created* by a thread are cloned together with the thread. This includes app-level objects. This interpretation follows from a nice -- if vague -- high-level description from Christian: if you start a thread and it computes something up to some point, and clone it as this point, then you get a new thread that "looks like" it has been started from scratch and then ran up to the same point, repeating the same computations. Of course, this is vague because we need to explain that input-output and other side effects that the thread might have had are not duplicated. A bientot, Armin. _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
