One other thing that could be done is to make the queue lock-free in itself, though I do suppose we'll face the same problems there too.