On Mon, 16 Oct 2006, Ales Katona wrote:
> I've implemented the semaphores stuff (with a big bad bug, btw thanks > Jonas for fixing). > > Right now I'm thinking about how to go next. > > The choices I see right now are: > > 1. Basicly just clean the current pthreads implementation, make sure > types are not redefined in baseunix/unixtypes and pthreads etc. and be > happy. > > 2. Add proper "interface" style pthreads with chosable (how is a > question) backend lib (eg: freeBSD has 3 libs to which a pthread > interface can link). What do you mean with this ? > > There's also a choice #3 which is a complete threading design overhaul, > but since that'd break old code I don't even consider it to be an option > (I actualy do but I know you wouldn't). If you keep everything working, I don't see why this would be a problem. > > There's also still the hackish NPTL vs processes linux situation in > TThread 2.4 vs 2.6 kernel. Not sure if it's considered "clean enough" > now that pipes are gone or if that should be somehow addressed as well. > > If the linux tthread.inc could be cleaned, I'm 100% sure that > tthread.inc could be merged into one file and put into rtl/unix. That is the minimum which should be done, IMHO. In fact, it should go in rtl/objpas and be independent of the OS. it should only use TThreadManager functions... When porting to a new OS, only TThreadManager should be implemented with a suitable implementation. That is why TThreadManager was introduced. Michael. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel