func (w *watchV3) Close() {
	w.mu.Lock()
	defer w.mu.Unlock()
	w.closed = true
	close(w.out)
}
Close closes the communication with the xds client
package transport
import (
	"fmt"
	"sync"
	gcpv3 "github.com/envoyproxy/go-control-plane/pkg/cache/v3"
	"github.com/envoyproxy/xds-relay/internal/app/metrics"
	"github.com/uber-go/tally"
)
var _ Watch = &watchV3{}
type watchV3 struct {
	out    chan gcpv3.Response
	mu     sync.RWMutex
	closed bool
	scope tally.Scope
}
func newWatchV3(scope tally.Scope) Watch {
	return &watchV3{
		out:   make(chan gcpv3.Response, 1),
		scope: scope,
	}
}