Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming.threads > #202
| From | Alexander Terekhov <terekhov@web.de> |
|---|---|
| Newsgroups | comp.programming.threads |
| Subject | Re: cond signal wait |
| Date | 2011-05-28 14:24 +0200 |
| Organization | A noiseless patient Spider |
| Message-ID | <4DE0E997.42657B4A@web.de> (permalink) |
| References | (3 earlier) <87lixubzfu.fsf@justsoftwaresolutions.co.uk> <a05141df-cede-4929-9e8d-4b9394fd6858@22g2000prx.googlegroups.com> <8ab4e07e-2b9b-4375-b425-dc03e6d017d5@f15g2000pro.googlegroups.com> <4DDFAEC8.531D6882@web.de> <2f847af0-7f62-43d2-aff3-f35f0d42c3ce@l2g2000prg.googlegroups.com> |
David Schwartz wrote: > > On May 27, 7:01 am, Alexander Terekhov <terek...@web.de> wrote: > > > Simply put, signalling before unlock prolongs the duration of mutex lock > > time (signalling operation takes some time) and that is not good. > > That's true, but there are many factors weighing the other way. The > biggest one is that unlocking the mutex may wake up a thread that > consumes the predicate, leading the subsequent signal to cause a Without wait-morphing, condvar signalling with mutex locked may cause a thread blocked on a condvar to wake up just to be blocked again now on mutex (after wake up due to condvar signalling). > spurious wakeup and two extra context switches. Context switching is old thinking. Nowadays think of idle multi(-core) processors hardware consuming electricity for no good reason instead of context switching: assume that all threads can run in parallel (simultaneously) and that unblocking blocked threads can never impact performance negatively. regards, alexander.
Back to comp.programming.threads | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
cond signal wait p6 c6d6 <p6c6d6@gmail.com> - 2011-05-24 18:56 -0700
Re: cond signal wait Anthony Williams <anthony.ajw@gmail.com> - 2011-05-25 08:46 +0100
Re: cond signal wait p6 c6d6 <p6c6d6@gmail.com> - 2011-05-25 05:44 -0700
Re: cond signal wait Anthony Williams <anthony.ajw@gmail.com> - 2011-05-25 15:57 +0100
Re: cond signal wait p6 c6d6 <p6c6d6@gmail.com> - 2011-05-25 08:34 -0700
Re: cond signal wait Anthony Williams <anthony.ajw@gmail.com> - 2011-05-25 16:53 +0100
Re: cond signal wait Alexander Terekhov <terekhov@web.de> - 2011-05-25 19:16 +0200
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-26 09:51 -0700
Re: cond signal wait Joshua Maurice <joshuamaurice@gmail.com> - 2011-05-26 14:48 -0700
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-26 23:20 -0700
Re: cond signal wait Joshua Maurice <joshuamaurice@gmail.com> - 2011-05-27 14:50 -0700
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-27 15:15 -0700
Re: cond signal wait Alexander Terekhov <terekhov@web.de> - 2011-05-28 15:48 +0200
Re: cond signal wait Alexander Terekhov <terekhov@web.de> - 2011-05-27 16:01 +0200
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-27 12:34 -0700
Re: cond signal wait Alexander Terekhov <terekhov@web.de> - 2011-05-28 14:24 +0200
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-29 01:33 -0700
Re: cond signal wait Alexander Terekhov <terekhov@web.de> - 2011-05-31 15:32 +0200
Re: cond signal wait David Schwartz <davids@webmaster.com> - 2011-05-31 14:07 -0700
csiph-web