This ought to make the spin lock a little more palatable. 500 milliseconds may be too long, but that's changeable.