def push(clnt)
      if clnt
        orphaned = false
        @mutex.synchronize do
          begin
            if !@shutdown && @_out.delete(clnt)
              @_pool << clnt
            else
              orphaned = true
            end
          ensure
            @cond.signal
          end
        end
        close_orphan(clnt) if orphaned
        reap! if @blocking_reap
      end
      nil
    end
def push(clnt)
      if clnt
        orphaned = false
        @mutex.synchronize do
          begin
            if !@shutdown && @_out.delete(clnt)
              @_pool << clnt
            else
              orphaned = true
            end
          ensure
            @cond.signal
          end
        end
        close_orphan(clnt) if orphaned
        reap! if @blocking_reap
      end
      nil
    end
Safely add client back to pool, only if
 that client is registered