code: func (smap *syncedMap) Iter() <-chan mapItem {
  	ch := make(chan mapItem)
  	go func() {
  		smap.RLock()
  		for key, val := range smap.data {
  			ch <- mapItem{
  				key: key,
  				val: val,
  			}
  		}
  		smap.RUnlock()
  		close(ch)
  	}()
  	return ch
  }
docs: // Iter returns a chan which output all items.