Grant the shared lock, even though others are waiting?
Or put the requester in the queue?
The implementation puts the requester in the queue.