# File lib/thread.rb, line 445
  def pop(*args)
    retval = super
    Thread.critical = true
    if @que.length < @max
      begin
        t = @queue_wait.shift
        t.wakeup if t
      rescue ThreadError
        retry
      ensure
        Thread.critical = false
      end
      begin
        t.run if t
      rescue ThreadError
      end
    end
    retval
  end