On ut , 2006-11-07 at 18:39 +0100, Jonas Maebe wrote: > Hello, > > Does anyone see a problem with the following CSuspendThread/ > CResumeThread implementations? > > function CSuspendThread (threadHandle : TThreadID) : dword; > begin > result := pthread_kill(threadHandle,SIGSTOP); > end; > > > function CResumeThread (threadHandle : TThreadID) : dword; > begin > result := pthread_kill(threadHandle,SIGCONT); > end; > Not sure how the signal handling is done per-thread in pthreads, will need to study on this. > > Those routines are currently empty, and called for *bsd/Darwin in > case you try to tthread.suspend one thread from inside another one. > FWIW, I guess Linux should be changed to also use the above (it > currently uses the regular kill, which may have unintended side > effects with NPTL). > Indeed, linux should follow this principle too as any unix with pthreads.
Ales _______________________________________________ fpc-devel maillist - [email protected] http://lists.freepascal.org/mailman/listinfo/fpc-devel
