MINOR: proxy; replace the spinlock with an rwlock

This is an anticipation of finer grained locking for the queues. For now
all lock places take a write lock so that there is no difference at all
with previous code.
6 files changed