Subj : Re: Lock Free -- where to start To : comp.programming.threads From : Sergey P. Derevyago Date : Wed Oct 05 2005 07:00 pm Peter Dimov wrote: > > Yes. The point is that some "lock free" algorithms just implement well > > known locking patterns in user code. Their argumentation is: I don't call > > mutex.lock() so my code is lock free... > > I think that this is not allowed by the definition of "lock free". A > locking algorithm will not make progress if the thread that has just > acquired the lock is preempted and never receives a chance to run. > Yes, the progress is a must. But look: spin lock loops shortly and obviously doesn't make any progress. Unfortunately, some "lock free" algorithms make long loops (e.g. make some progress, determine that some critical data was concurrently touched and start the "progress" once again) and it's not so obvious that there can be no real progress as well. -- With all respect, Sergey. http://ders.angen.net/ mailto : ders at skeptik.net .