code: func (handler *Handler) serialSendAsync(msg *pb.ChaincodeMessage, errc chan error) {
  	go func() {
  		err := handler.serialSend(msg)
  		if errc != nil {
  			errc <- err
  		}
  	}()
  }
docs: //serialSendAsync serves the same purpose as serialSend (serialize msgs so gRPC will
  //be happy). In addition, it is also asynchronous so send-remoterecv--localrecv loop
  //can be nonblocking. Only errors need to be handled and these are handled by
  //communication on supplied error channel. A typical use will be a non-blocking or
  //nil channel