Dang, I read your first paragraph and was composing a response, but it was your second paragraph!
Further, if you need prioritization beyond first-come-first-served, you could implement that either by the client routine entering a priority in the request, or including the information that lets the 'subroutine' evaluate comparative request priorities.