code: func NewSharedIndexInformer(lw ListerWatcher, objType runtime.Object, defaultEventHandlerResyncPeriod time.Duration, indexers Indexers) SharedIndexInformer {
  	realClock := &clock.RealClock{}
  	sharedIndexInformer := &sharedIndexInformer{
  		processor:                       &sharedProcessor{clock: realClock},
  		indexer:                         NewIndexer(DeletionHandlingMetaNamespaceKeyFunc, indexers),
  		listerWatcher:                   lw,
  		objectType:                      objType,
  		resyncCheckPeriod:               defaultEventHandlerResyncPeriod,
  		defaultEventHandlerResyncPeriod: defaultEventHandlerResyncPeriod,
  		cacheMutationDetector:           NewCacheMutationDetector(fmt.Sprintf("%T", objType)),
  		clock:                           realClock,
  	}
  	return sharedIndexInformer
  }
docs: // NewSharedIndexInformer creates a new instance for the listwatcher.