QK scheduler working incorrectly
Real-Time Event Frameworks based on active objects & state machines
Brought to you by:
quantum-leaps
The QK scheduler in QP/C++ 5.6.2 works incorrectly.
One symptom is that upon the starup, QK no longer processes all events posted to AOs before QF_run(). Instead, QK processes only the highest-priority AO, and drops to the idle loop before processing all other AOs with events in their queues.
Anonymous
Further investigation shows that the QK scheduler has a serious bug introduced in QP/C++ 5.6.2. In an attempt to eliminate code repetition, the scheduler has been inadvertently altered, such that it scheduled only one AO (of the highest-priory at the time), instead of all AOs with prirority higher than the initial one.
The bug has been fixed in QP/C++ 5.6.3. The previous release QP/C++ 5.6.2 has been deleted to avoid spreading the problem.