code: func (b *blockManager) QueueInv(inv *wire.MsgInv, sp *ServerPeer) {
  	// No channel handling here because peers do not need to block on inv
  	// messages.
  	if atomic.LoadInt32(&b.shutdown) != 0 {
  		return
  	}
  
  	select {
  	case b.peerChan <- &invMsg{inv: inv, peer: sp}:
  	case <-b.quit:
  		return
  	}
  }
docs: // QueueInv adds the passed inv message and peer to the block handling queue.