Christina Sander
d268273e3c
When calling _diableScheduling of the participant to enable the own participant for scheduling by the manager the process runned in a deadlock. Summary: 1. manager locks mutex mutexSchedulingParticipants_ 2. calls schedule class function of participants in the schedulingParticipants_ list 3. there the _disableScheduling function is called by the participant 4. which calls the unschedule function of the manager 5. manager tries to lock mutexSchedulingParticipants_ which is already locked Solution: - this commit adds the following elements to the Manager class: 1. disableScheduleQueue_ 2. mutexDisableScheduleQueue_ 3. processDisableScheduling_() ( like processConnections() ) - this commit changes the following functions of Manager class: 1. unschedule( ... ) -> now adds given participant to disableScheduleQueue 2. scheduleProcess_() -> now also calls the class function processDisableSchedulung_() after processConections_() |
||
---|---|---|
cmake/Modules | ||
include/EventManager | ||
libs | ||
src/EventManager | ||
tests | ||
.gitignore | ||
.gitmodules | ||
CMakeLists.txt | ||
LICENSE | ||
README.md |
EventManager
Description
A small Event System written as C++20 library.
Author
- Dominik Meyer dmeyer@federationhq.de
License
MPLv2
Rest
T.b.d.