What if 2 first requests came "almost" simultaneously? Looks the queue will not be emptied at all. Don't you think that "===" condition is too strict?