Am Samstag, 7. Juli 2007 schrieb Lars Luthman:
> On Sat, 2007-07-07 at 12:03 +0200, Arnold Krille wrote:
> > Am Samstag, 7. Juli 2007 schrieb Lars Luthman:
> > > On Sat, 2007-07-07 at 02:34 +0200, Fons Adriaensen wrote:
> > > > * The callback has to know when it can (re)write the object.
> > > > Clearly it should never wait on a sema, and it is already
> > > > periodic, so here you can use a flag in the object.
> > > Is there any advantage in using a simple flag instead of a semaphore
> > > and sem_trywait()?
> > A semaphore might mislead you to use wait()/lock() in the wrong thread...
> Seriously now, I'm not _that_ stupid. =)
Yeah, me too. And we will remember that next time we search for some crazy
bug, hard to reproduce, bailing out on jack... and than we realize that
people make errors...
> > And if you only sync two threads and each of them has its own flag (for
> > write), there shouldn't be any race-conditions and its easier to use a
> > bool-variable than semaphore->bla().
> I guess so. Can you always be sure that writing to word-sized variables
> is atomic on SMP systems?
Well, a flag is either in a bit-field, which I don't recommend, or a bool
variable which should be a char on most (all?) systems. Or you can force that
by using the type char. And that should be atomic.
> Although if you only check for 0 or not 0 I guess it doesn't matter.
Right. One thread only writes true or false to that variable and the other one
just reads...
Arnold
-- visit http://www.arnoldarts.de/ --- Hi, I am a .signature virus. Please copy me into your ~/.signature and send me to all your contacts. After a month or so log in as root and do a rm / -rf. Or ask your administrator to do so...
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo.cgi/linux-audio-dev
This archive was generated by hypermail 2.1.8 : Sat Jul 07 2007 - 16:15:04 EEST