That will happen, if your event function takes more time than the internal cycle time. If you register an event function it must be executed within a cycle, otherwise the functions will overlap.
Example: You push a button, the function will start work, take 1 second. In that second you pushed the button 3 times more, so the same function will be queued 3 times and will be executed one after one. So it will take 4 seconds to execute the same function 4 times, without any other Input-Action.
You can call the functions asynchronous by adding as_thread=True in the .reg_event call.