Raymond Toy <[EMAIL PROTECTED]> writes: > Actually it seems to be both (and an alien stack). There's the > control-stack-fork vop and friends that copy the control stack. > multi-proc has stuff about the binding stack and alien stack.
Yes, you're right. That's at least looking a bit suspicious. > Gerd> Well, I guess one would have to frob SYMBOL-VALUE to make this work. > Gerd> One could store symbol values for each thread in thread-local storage, > Gerd> and let SYMBOL-VALUE retrieve it from there. > > That would make symbol-value much slower wouldn't it? One thing one could do is store with each symbol, when it gets a thread-local binding, an offset in thread-local storage where its value cell is found. Maybe there also has to be some code that determines if a symbol has a thread-local binding to start with, dunno. But I think the picture is not that bad overall; slower by some constant factor should be possible, I think. > Gerd> I hope that's approximately right; it must have been >10 years since I > Gerd> last used that :). > > I think that's how SBCL implements it's threads on Linux. :-) He he. Some things never change :).
