QP/C++  7.3.0
Real-Time Embedded Framework
No Matches
QP::QV Namespace Reference

cooperative, non-preemptive kernel More...


class  Attr
 Private attributes of the QV kernel. More...


void onIdle ()


QV::Attr priv_

Detailed Description

cooperative, non-preemptive kernel

Function Documentation

◆ onIdle()

QP::QV::onIdle ( void  )

QV idle callback (customized in BSPs for QV)

QV_onIdle() is called by the cooperative QV kernel (from QF_run()) when the scheduler detects that no events are available for active objects (the idle condition). This callback gives the application an opportunity to enter a power-saving CPU mode, or perform some other idle processing (such as QS software tracing output).

QV_onIdle() is invoked with interrupts DISABLED because the idle condition can be asynchronously changed at any time by an interrupt. QV_onIdle() MUST enable the interrupts internally, but not before putting the CPU into the low-power mode. (Ideally, enabling interrupts and low-power mode should happen atomically). At the very least, the function MUST enable interrupts, otherwise interrupts will remain disabled permanently.

Variable Documentation

◆ priv_

QV::Attr QP::QV::priv_

Definition at line 76 of file qv.cpp.