Re: Thread starvation with mutex
"Gary S. Robertson" <[email protected]> Tue, 10 Feb 2004 19:58:07 -0600
| Newsgroups | gmane.comp.lib.phil |
|---|---|
| Message-ID | <[email protected]> |
David Lloyd wrote: >On Mon, 9 Feb 2004, Gary S. Robertson wrote: > >>System/library function calls should be engineered to reliably perform >>the operations their names and documentation suggest will occur when >>they are invoked - otherwise they should return with an error. In this >>case, if the programmer calls pthread_mutex_unlock, then most likely the >>intent is to yield the mutex to the next waiting pthread, if any. >> > >I disagree, I would think that the intent for pthread_mutex_unlock would >be to unlock the mutex according to the way POSIX Threads are supposed to >unlock mutexes. If I want to yield a mutex to another thread, I would use >a condition variable. > >- D > This would be appropriate if the desire is to yield the protected resource to a specific thread... it shouldn't be necessary to incur the extra overhead of a condition variable or a second system call if the intent is simply to the next unspecified thread which might be waiting on it.