[fpc-pascal] semaphores?

Jonas Maebe jonas.maebe at elis.ugent.be
Mon Apr 20 10:55:28 CEST 2009


On 20 Apr 2009, at 10:30, Michael Van Canneyt wrote:

> On Mon, 20 Apr 2009, Jonas Maebe wrote:
>
>> On 14 Apr 2009, at 13:42, Michael Van Canneyt wrote:
>>
>>> Use GetThreadManager() to retrieve the thread manager, and then
>>> simply use the various functions.
>>
>> No, the thread manager is only for internal use by the RTL, and may  
>> lack
>> implementations for functions not required by the RTL for a  
>> particular
>> platform. See http://bugs.freepascal.org/view.php?id=11206
>
> That was definitely not the original intention of the thread manager.
>
> The idea was to have low-level thread related functions available  
> without
> classes, including semaphores.

I don't think the thread manager is an appropriate model for this, as  
it may have to be changed depending on internal requirements of the  
RTL (for example, a big shortcoming currently is that the thread  
manager generally lacks error reporting functionality, other than  
triggering run time errors). An abstraction layer on top of the thread  
manager seems more appropriate for the purpose of offering a portable  
procedural threading interface.

It's similar to how you don't directly use the memory manager, but  
instead have to use getmem/freemem/...


Jonas



More information about the fpc-pascal mailing list