On Sun, Jul 27, 2014 at 02:39:58PM +0200, Sven Barth wrote: > On 27.07.2014 11:39, Mark Morgan Lloyd wrote: > >Sven Barth wrote: > >>On 26.07.2014 19:50, leledumbo wrote: > >>>>Because then all apps are linked to it, also the ones that don't need > >>>threads. Same for clocale and cwstrings. > >>> > >>>If the widestring manager could be made by ourselves, is it possible for > >>>thread manager as well? > >> > >>Principiall yes, but the problem here would be external code that the > >>program links to. E.g. Wine did something like this some time ago > >>(before they switched to pthreads) and needed to simulate some > >>structures so that libc switches to multithreaded mode... So if we > >>have Pascal only code (like the compiler) this would work without big > >>problems (if someone implements it of course ;) ), but if you have 3rd > >>party code not written in FPC then problems might arise... > > > >On the other hand, if somebody's linking in "alien" code then he should > >make himself aware of aware of the prerequisites, particularly since the > >threads are more likely to be in the main program (i.e. stuff that he's > >written) than in the library he's pulling in. > > That's not true. E.g. the Qt libraries happily create threads for various > background stuffs.
Ha, I had a library that started a thread and it took me ages to figure out why my pascal program was crashing on callbacks from external threads. I had to start a dummy thread right at the start of the program, even though I included cthreads. Not a good experience all in all. Henry _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal