main #2

Merged
byterazor merged 3 commits from csander/EventManagementSystem:main into main 2022-08-30 18:16:48 +02:00

3 Commits

Author SHA1 Message Date
d268273e3c
FIX: fixes deadlock bug of class function to disable scheduling
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_()
2022-08-30 15:12:51 +02:00
5c2fc37748
ADD: Adds comment to processConnections_ class function of the manager 2022-08-30 15:12:31 +02:00
1ed68d302d
FIX: fixes spelling error in variablename participants_ (list of connected participants in the manager). 2022-08-30 12:43:42 +02:00