# File lib/god/driver.rb, line 84
    def pop
      begin
        while (Thread.critical = true; @events.empty? or !@events.first.due?)
          @waiting.push Thread.current
          if @events.empty?
            raise ThreadError, "queue empty" if @shutdown
            Thread.stop
          else
            Thread.critical = false
            sleep @events.first.at - Time.now
            Thread.critical = true
          end
        end
        @events.shift
      ensure
        Thread.critical = false
      end
    end