avoid a crash: don't return unless the run queue has some threads in it