[fpc-pascal] Thread IDs

Vincent Snijders vsnijders at vodafonevast.nl
Thu Feb 18 22:04:50 CET 2010

Wimpie Nortje schreef:
> Jonas Maebe wrote:
>> On 18 Feb 2010, at 16:35, Wimpie Nortje wrote:
>>> What is the difference between GetThreadID() and GetCurrentThreadID()?
>> There is a threadvar called "threadid" in the system unit. When a new 
>> thread is started, GetCurrentThreadID is called to obtain the thread 
>> id of the new thread (via the thread manager) and the result is stored 
>> in the threadid threadvar. GetThreadID simply returns the value of 
>> this threadvar.
>> So in summary: there is no semantic difference.
> They return different values. I think GetCurrentThreadID is the more 
> trustworthy one. When control returns to my main thread then 
> GetCurrentThreadID = MainThreadID and GetThreadID <>MainThreadID

I found some inconsistencies a couple of months ago, but never got to 
creating a bug report:

lists.freepascal.org seems down, so I found this link.


More information about the fpc-pascal mailing list