[concurrency-interest] PriorityBlockingQueue put() operation
martinrb at google.com
Sat Nov 7 23:37:32 EST 2009
On Sat, Nov 7, 2009 at 15:00, Joe Bowbeer <joe.bowbeer at gmail.com> wrote:
> Wikipedia currently makes this distinction:
> "In computer science, non-blocking synchronization ensures that threads
> competing for a shared resource do not have their execution indefinitely
> postponed by mutual exclusion. A non-blocking algorithm is lock-free if
> there is guaranteed system-wide progress; wait-free if there is also
> guaranteed per-thread progress."
> So non-blocking < lock-free < wait-free ?
I read it a little differently.
"lock-free" is a kind of "non-blocking synchronization",
the weakest kind. So:
non-blocking <= lock-free < wait-free
non-blocking synchronization cannot involve locks,
since some thread can acquire the lock and never be scheduled again,
causing *all* threads to
"have their execution indefinitely postponed by mutual exclusion".
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Concurrency-interest