Beware as `this.queue.pop()` may return `undefined` at some point