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
>> implementations for functions not required by the RTL for a
>> 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
> 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/...
More information about the fpc-pascal