Hello,
That's not the end of the story, i have benchmarked the ticket spinlock
that i am using and that you find here:
http://code.google.com/p/gpdelphiunits/source/browse/trunk/src/SpinLock.pas?r=37
and found that it has a poor performance cause in the case of a spinlock
without tickets when it is unlocked() the first thread that comes first
to the lock() will enter immediatly the locked section, but that's not
the case with a Ticket spinlock cause if the first thread that enter the
lock() have not the ticket the other threads that have the ticket and
that are waiting for there turn will wait more , so this is why the
Ticket spinlock have a poor performance compared to a simple spinlock
with a backoff.
So i will advice you to avoid the Ticket spinlock.
Thank you,
Amine Moulay Ramdane.