mirror of
https://github.com/QuantumLeaps/qpcpp.git
synced 2025-01-14 05:42:57 +08:00
6.8.0
This commit is contained in:
parent
eb24368ad2
commit
9987b63cd7
@ -108,29 +108,29 @@
|
||||
5 1 28 1 5 QP::QTimeEvt::wasDisarmed@532-536@..\src\qf\qf_time.cpp
|
||||
7 1 28 1 9 QP::QTimeEvt::currCtr@551-559@..\src\qf\qf_time.cpp
|
||||
11 2 79 1 16 QP::QF::init@78-93@..\src\qk\qk.cpp
|
||||
3 1 14 1 4 QP::QF::stop@106-109@..\src\qk\qk.cpp
|
||||
6 2 26 1 8 QP::initial_events@114-121@..\src\qk\qk.cpp
|
||||
10 3 40 1 14 QP::QF::run@132-145@..\src\qk\qk.cpp
|
||||
21 5 139 6 30 QP::QActive::start@164-193@..\src\qk\qk.cpp
|
||||
21 2 138 1 32 QP::QK::schedLock@218-249@..\src\qk\qk.cpp
|
||||
22 4 149 1 33 QP::QK::schedUnlock@268-300@..\src\qk\qk.cpp
|
||||
14 3 94 1 17 QK_sched_@320-336@..\src\qk\qk.cpp
|
||||
61 15 421 1 105 QK_activate_@347-451@..\src\qk\qk.cpp
|
||||
3 1 14 1 4 QP::QF::stop@111-114@..\src\qk\qk.cpp
|
||||
6 2 26 1 8 QP::initial_events@119-126@..\src\qk\qk.cpp
|
||||
10 3 40 1 14 QP::QF::run@137-150@..\src\qk\qk.cpp
|
||||
21 5 139 6 30 QP::QActive::start@169-198@..\src\qk\qk.cpp
|
||||
21 2 138 1 32 QP::QK::schedLock@223-254@..\src\qk\qk.cpp
|
||||
22 4 149 1 33 QP::QK::schedUnlock@273-305@..\src\qk\qk.cpp
|
||||
14 3 94 1 17 QK_sched_@325-341@..\src\qk\qk.cpp
|
||||
61 15 421 1 105 QK_activate_@352-456@..\src\qk\qk.cpp
|
||||
9 2 67 1 13 QP::QF::init@79-91@..\src\qv\qv.cpp
|
||||
3 1 12 1 4 QP::QF::stop@104-107@..\src\qv\qv.cpp
|
||||
37 9 198 1 71 QP::QF::run@125-195@..\src\qv\qv.cpp
|
||||
15 3 109 6 22 QP::QActive::start@215-236@..\src\qv\qv.cpp
|
||||
3 1 12 1 4 QP::QF::stop@109-112@..\src\qv\qv.cpp
|
||||
37 9 198 1 71 QP::QF::run@130-200@..\src\qv\qv.cpp
|
||||
15 3 109 6 22 QP::QActive::start@220-241@..\src\qv\qv.cpp
|
||||
2 1 10 0 2 QP::QXKIdleThread::QXKIdleThread@68-69@..\src\qxk\qxk.cpp
|
||||
14 2 103 1 22 QP::QF::init@85-106@..\src\qxk\qxk.cpp
|
||||
3 1 12 1 4 QP::QF::stop@119-122@..\src\qxk\qxk.cpp
|
||||
6 2 26 1 8 QP::initial_events@127-134@..\src\qxk\qxk.cpp
|
||||
10 3 40 1 15 QP::QF::run@143-157@..\src\qxk\qxk.cpp
|
||||
24 6 161 6 34 QP::QActive::start@174-207@..\src\qxk\qxk.cpp
|
||||
24 3 150 1 34 QP::QXK::schedLock@230-263@..\src\qxk\qxk.cpp
|
||||
22 4 149 1 34 QP::QXK::schedUnlock@282-315@..\src\qxk\qxk.cpp
|
||||
51 7 296 1 70 QXK_sched_@335-404@..\src\qxk\qxk.cpp
|
||||
79 16 547 1 135 QXK_activate_@415-549@..\src\qxk\qxk.cpp
|
||||
13 2 72 1 20 QXK_current@552-571@..\src\qxk\qxk.cpp
|
||||
3 1 12 1 4 QP::QF::stop@124-127@..\src\qxk\qxk.cpp
|
||||
6 2 26 1 8 QP::initial_events@132-139@..\src\qxk\qxk.cpp
|
||||
10 3 40 1 15 QP::QF::run@148-162@..\src\qxk\qxk.cpp
|
||||
24 6 161 6 34 QP::QActive::start@179-212@..\src\qxk\qxk.cpp
|
||||
24 3 150 1 34 QP::QXK::schedLock@235-268@..\src\qxk\qxk.cpp
|
||||
22 4 149 1 34 QP::QXK::schedUnlock@287-320@..\src\qxk\qxk.cpp
|
||||
51 7 296 1 70 QXK_sched_@340-409@..\src\qxk\qxk.cpp
|
||||
79 16 547 1 135 QXK_activate_@420-554@..\src\qxk\qxk.cpp
|
||||
13 2 72 1 20 QXK_current@557-576@..\src\qxk\qxk.cpp
|
||||
16 4 105 1 24 QP::QXMutex::init@84-107@..\src\qxk\qxk_mutex.cpp
|
||||
66 12 456 1 108 QP::QXMutex::lock@129-236@..\src\qxk\qxk_mutex.cpp
|
||||
47 10 301 1 71 QP::QXMutex::tryLock@256-326@..\src\qxk\qxk_mutex.cpp
|
||||
|
@ -3,7 +3,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -91,14 +91,6 @@ void QF::init(void) {
|
||||
// init the global condition variable with the default initializer
|
||||
pthread_cond_init(&QV_condVar_, NULL);
|
||||
|
||||
// clear the internal QF variables, so that the framework can (re)start
|
||||
// correctly even if the startup code is not called to clear the
|
||||
// uninitialized data (as is required by the C++ Standard).
|
||||
extern std::uint_fast8_t QF_maxPool_;
|
||||
QF_maxPool_ = 0U;
|
||||
bzero(&QF::timeEvtHead_[0], sizeof(QF::timeEvtHead_));
|
||||
bzero(&active_[0], sizeof(active_));
|
||||
|
||||
l_tick.tv_sec = 0;
|
||||
l_tick.tv_nsec = NANOSLEEP_NSEC_PER_SEC/100L; // default clock tick
|
||||
l_tickPrio = sched_get_priority_min(SCHED_FIFO); // default tick prio
|
||||
|
@ -3,7 +3,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -94,14 +94,6 @@ void QF::init(void) {
|
||||
// calling QF::run()
|
||||
pthread_mutex_lock(&l_startupMutex);
|
||||
|
||||
// clear the internal QF variables, so that the framework can (re)start
|
||||
// correctly even if the startup code is not called to clear the
|
||||
// uninitialized data (as is required by the C++ Standard).
|
||||
extern std::uint_fast8_t QF_maxPool_;
|
||||
QF_maxPool_ = 0U;
|
||||
bzero(&QF::timeEvtHead_[0], sizeof(QF::timeEvtHead_));
|
||||
bzero(&active_[0], sizeof(active_));
|
||||
|
||||
l_tick.tv_sec = 0;
|
||||
l_tick.tv_nsec = NANOSLEEP_NSEC_PER_SEC/100L; // default clock tick
|
||||
l_tickPrio = sched_get_priority_min(SCHED_FIFO); // default tick prio
|
||||
|
@ -4,7 +4,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -70,14 +70,6 @@ static DWORD WINAPI ticker_thread(LPVOID arg);
|
||||
void QF::init(void) {
|
||||
InitializeCriticalSection(&l_win32CritSect);
|
||||
QV_win32Event_ = CreateEvent(NULL, FALSE, FALSE, NULL);
|
||||
|
||||
// clear the internal QF variables, so that the framework can (re)start
|
||||
// correctly even if the startup code is not called to clear the
|
||||
// uninitialized data (as is required by the C++ Standard).
|
||||
extern std::uint_fast8_t QF_maxPool_;
|
||||
QF_maxPool_ = 0U;
|
||||
bzero(&QF::timeEvtHead_[0], sizeof(QF::timeEvtHead_));
|
||||
bzero(&active_[0], sizeof(active_));
|
||||
}
|
||||
//****************************************************************************
|
||||
void QF_enterCriticalSection_(void) {
|
||||
|
@ -4,7 +4,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -69,14 +69,6 @@ void QF::init(void) {
|
||||
// any active objects started before calling QF::run()
|
||||
InitializeCriticalSection(&l_startupCritSect);
|
||||
EnterCriticalSection(&l_startupCritSect);
|
||||
|
||||
// clear the internal QF variables, so that the framework can (re)start
|
||||
// correctly even if the startup code is not called to clear the
|
||||
// uninitialized data (as is required by the C++ Standard).
|
||||
extern std::uint_fast8_t QF_maxPool_;
|
||||
QF_maxPool_ = 0U;
|
||||
bzero(&QF::timeEvtHead_[0], sizeof(QF::timeEvtHead_));
|
||||
bzero(&active_[0], sizeof(active_));
|
||||
}
|
||||
//****************************************************************************
|
||||
void QF_enterCriticalSection_(void) {
|
||||
|
@ -4,7 +4,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -101,6 +101,11 @@ void QF::init(void) {
|
||||
/// system or for handling fatal errors that require shutting down
|
||||
/// (and possibly re-setting) the system.
|
||||
///
|
||||
/// @attention
|
||||
/// After calling QF::stop() the application must terminate and cannot
|
||||
/// continue. In particular, QF::stop() is **not** intended to be followed
|
||||
/// by a call to QF::init() to "resurrect" the application.
|
||||
///
|
||||
/// @sa QP::QF::onCleanup()
|
||||
///
|
||||
void QF::stop(void) {
|
||||
|
@ -4,7 +4,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-03-03
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -55,6 +55,9 @@ std::uint8_t volatile QF_intNest;
|
||||
|
||||
// QF functions ==============================================================
|
||||
void QF::init(void) {
|
||||
/// Clear the internal QF variables, so that the framework can start
|
||||
/// correctly even if the startup code fails to clear the uninitialized
|
||||
/// data (as is required by the C++ Standard).
|
||||
QF_maxPool_ = 0U;
|
||||
QF_subscrList_ = nullptr;
|
||||
QF_maxPubSignal_ = 0;
|
||||
|
@ -5,7 +5,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-20
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -74,7 +74,7 @@ extern "C" {
|
||||
///
|
||||
/// @note QP::QF::init() clears the internal QF variables, so that the
|
||||
/// framework can start correctly even if the startup code fails to clear
|
||||
/// the uninitialized data (as is required by the C Standard).
|
||||
/// the uninitialized data (as is required by the C++ Standard).
|
||||
///
|
||||
void QF::init(void) {
|
||||
QF_maxPool_ = 0U;
|
||||
@ -99,6 +99,11 @@ void QF::init(void) {
|
||||
/// system or for handling fatal errors that require shutting down
|
||||
/// (and possibly re-setting) the system.
|
||||
///
|
||||
/// @attention
|
||||
/// After calling QF::stop() the application must terminate and cannot
|
||||
/// continue. In particular, QF::stop() is **not** intended to be followed
|
||||
/// by a call to QF::init() to "resurrect" the application.
|
||||
///
|
||||
/// @sa QP::QF::onCleanup()
|
||||
///
|
||||
void QF::stop(void) {
|
||||
|
@ -5,7 +5,7 @@
|
||||
/// @cond
|
||||
///***************************************************************************
|
||||
/// Last updated for version 6.8.0
|
||||
/// Last updated on 2020-01-23
|
||||
/// Last updated on 2020-03-23
|
||||
///
|
||||
/// Q u a n t u m L e a P s
|
||||
/// ------------------------
|
||||
@ -114,6 +114,11 @@ void QF::init(void) {
|
||||
/// system or for handling fatal errors that require shutting down
|
||||
/// (and possibly re-setting) the system.
|
||||
///
|
||||
/// @attention
|
||||
/// After calling QF::stop() the application must terminate and cannot
|
||||
/// continue. In particular, QF::stop() is **not** intended to be followed
|
||||
/// by a call to QF::init() to "resurrect" the application.
|
||||
///
|
||||
/// @sa QF::onCleanup()
|
||||
///
|
||||
void QF::stop(void) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user