[fpc-devel] CSuspendThread/CResumeThread
Ales Katona
almindor at gmail.com
Tue Nov 7 18:46:24 CET 2006
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
More information about the fpc-devel
mailing list