[fpc-pascal] notify and notigyall
Vinzent Hoefler
JeLlyFish.software at gmx.net
Fri Aug 24 10:27:53 CEST 2007
On Friday 24 August 2007 07:55, Michael Van Canneyt wrote:
> On Fri, 24 Aug 2007, Vinzent Hoefler wrote:
> > On Thursday 23 August 2007 19:47, Jonas Maebe wrote:
> > > On 23 Aug 2007, at 21:29, Luca Olivetti wrote:
> > > > How are these different to the TEventObject,TSimpleEvent
> > > > classes in syncobjs? Just curious, since I usually do with
> > > > syncobjs, and I don't see a big difference between
> > > > MyEvent.SetEvent/MyEvent.WaitFor and
> > > > RTLEventSetEvent/RTLEventWaitFor
> > >
> > > If you look at the source of syncobjs, you'll notice teventobject
> > > is just an OO coat for tbasicrtlevent.
> >
> > Last time I looked this is only true for Win32, the Unix version
> > seems to be very different and is implemented with semaphores. Is
> > there a reason why those routines are not simply based POSIX
> > condition variables?
>
> Yes: a single source base. All 'basic' threading routines are in the
> system unit, all the rest is based on that.
Yes, I figured that this was the idea. I don't have access to the
current SVN version (not before this evening when I am back home) to
adequately show what I mean, but - from my bad memory - the question
remains why
1) the Unix version makes so strange and wild efforts to support WaitFor
with timeouts if there is pthread_cond_timed_wait() (and this is used
elsewhere already) and
2) why the SyncObjs tEvent objects uses those semaphore stuff instead of
the fixed RTLEvents.
Vinzent.
More information about the fpc-pascal
mailing list