[fpc-devel] Why FreeBSD sem_init() works different to Linux?
Sven Barth
pascaldragon at googlemail.com
Thu Feb 7 10:13:29 CET 2013
Am 07.02.2013 09:46, schrieb Graeme Geldenhuys:
> On 2013-02-06 20:17, Sven Barth wrote:
>> If you just define your own semaphore class that contains the platform
>> specific types and lock and unlock methods then you only need to add an
>> additional "array[0..4] of Longint" after the "sem_t" field for FreeBSD.
>> Then you should be okay.
> Yes that will work, but it simply moves the problems or IFDEF's to a
> different location.
But the ifdefs will only be in one location. If I've understood you
correctly, than your currently problem also is that you have the
"{$ifdef windows}...{$elseif linux}...{$endif}" code in multiple places.
This way you'd reduce that to one and rely on OS functionality
nevertheless (which is known to work - if used correctly :P ).
Regards,
Sven
More information about the fpc-devel
mailing list