code: func (e *EBus) Emit(event string, data interface{}) {
  	go func() {
  		log.Debugf("emmiting event `%s`", event)
  
  		if topic, ok := e.eventList[event]; ok {
  			log.Debug("found listeners for event " + event)
  
  			for el := topic.Front(); el != nil; el = el.Next() {
  				fn := el.Value.(EvHandler)
  				fn(data)
  			}
  		} else {
  			log.Debugf("listeners for event %s not found", event)
  		}
  	}()
  }
docs: // Emitting event with data. One goroutine per emit will be created.