
BTW.: As I have stumbled over "lock-free " and "wait-free". Is it true that the use of a user space "spin lock" despite its name belongs to the class of lock-free but not wait free algorithms?
I don't know. These lock free algorithms are new to me and aren't my forte. I stumbled across it after watching the interview with Herb Sutter here http://channel9.msdn.com/Showpost.aspx?postid=39463. According to some papers I've been reading an algorithm is lock free if it guarantees that forward progress is made. So according to that definition you could technically qualify a user space 'spin lock' as lock free. I might be wrong. Maybe I read the wrong definition for lock free. I do know that they rely on CAS (compare and swap) being an atomic instruction at the processor level and can see how the lock free algorithms use CAS to implement lock free behaviour. -- sashan http://sashang.orcon.net.nz/code/code.htm