http://www.unix.com/man-page/freebsd/3/pthread_spin_lock/
The pthread_spin_lock() function will acquire lock if it is not currently owned by another
thread. If the lock cannot be acquired immediately, it will spin attempting to acquire the
lock (it will not sleep) until it becomes available.