List all current Listeners to an EventDispatcher

Is there any way to list all listeners to an EventDispatcher instance, or at least list all event strings that are being listened for?

I know there is a “hasEventListener()” function, but you need to know the string you pass in in order to check for it. I suppose it would be bad coding ethic, but it can have its uses. (Am I making myself clear enough on what I am looking for?)

Also, how are eventListeners speedwise? Since there is a lot that needs to be accomplished when dispatching and listening for events, would it be a bad idea to use an Event system for such potentially CPU heavy items as collision detecting?