sometimes the queue maybe empty