OS X supports a limited form of thread local storage which is implemented with a hashtable underneath, so it is slow. I forget the details now though.
Slava On Mon, Jul 27, 2009 at 3:05 PM, Phil Dawes<[email protected]> wrote: > Thanks Joe - that sounds like a good idea. > > I also saw this today, which says that osx doesn't have support for > thread local storage at all. Have I understood that right?: > http://dobbscodetalk.com/index.php?option=com_myblog&show=Porting-D-to-the-Mac.html&Itemid=29 > > Cheers, > > Phil > > Joe Groff wrote: >>> Hi All, >>> >>> Quick update: >>> >>> Last night I managed to get win32 factor to bootstrap and run on my >>> linux laptop using wine and mingw32 so I can now do some windows >>> portability coding. Unfortunately I'm having some problems with the >>> reentrancy code, which I guess are also problems on 'real' win32 >>> platforms too. >>> >>> After some limited testing my best guess is that thread-local- >>> storage is >>> causing problems with LoadLibrary (dlsym) loaded symbols. Internal >>> variables are fine but those externally referenced in factor code >>> indirectly using the rel-dlsym word (e.g. words in x86.factor) seem to >>> crash the vm. >> >> At a glance it looks like the "nursery" pointer is the only thing the >> compiler references out of the VM. You could add a VM primitive to >> return the nursery symbol if that's the case. If I'm wrong and there >> are other VM symbols referenced from Factor code, you could take >> Slava's advice and roll all the global VM state into a single thread- >> local struct variable, then add a primitive that returns a pointer to >> that struct. You could then replace all references to VM symbols with >> alien struct accessors. >> >> -Joe >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> Factor-talk mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/factor-talk >> > > > > ------------------------------------------------------------------------------ > _______________________________________________ > Factor-talk mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/factor-talk > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Factor-talk mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/factor-talk
