![]() |
SuperTinyKernel™ RTOS 1.05.3
Lightweight, high-performance, deterministic, bare-metal C++ RTOS for resource-constrained embedded systems. MIT Open Source License.
|
Namespace of RWMutex test. More...
Classes | |
| class | ConcurrentReadersTask |
| Tests that multiple readers can acquire ReadLock() simultaneously. More... | |
| class | WriterExclusivityTask |
| Tests that writer Lock()/Unlock() provides mutual exclusion. More... | |
| class | WriterStarvationTask |
| Tests writer preference policy: writers don't starve under reader flood. More... | |
| class | TimedReadLockTask |
| Tests TimedReadLock() timeout behavior. More... | |
| class | TimedWriteLockTask |
| Tests TimedLock() timeout behavior for writers. More... | |
| class | TryReadLockWhileWriterTask |
| Tests TryReadLock() returns false when writer is active; true after release. More... | |
| class | ReadUnlockWakesWriterTask |
| Tests that the last reader releasing wakes a waiting writer immediately. More... | |
| class | WriterPriorityTask |
| Tests writer preference policy: new readers are blocked when writers are waiting. More... | |
| class | ReaderWriterAlternationTask |
| Tests alternating read and write phases with multiple concurrent readers. More... | |
| class | StressTestTask |
| Stress test mixing readers and writers under full five-task contention. More... | |
Functions | |
| static void | ResetTestState () |
Variables | |
| static volatile int32_t | g_TestResult = 0 |
| static volatile int32_t | g_SharedCounter = 0 |
| static volatile int32_t | g_ReaderCount = 0 |
| static volatile int32_t | g_WriterCount = 0 |
| static volatile int32_t | g_MaxConcurrent = 0 |
| static volatile bool | g_TestComplete = false |
| static volatile int32_t | g_InstancesDone = 0 |
| static Kernel< KERNEL_DYNAMIC|KERNEL_SYNC, 5, SwitchStrategyRR, PlatformDefault > | g_Kernel |
| static sync::RWMutex | g_TestRWMutex |
Namespace of RWMutex test.
|
static |
Definition at line 702 of file test_rwmutex.cpp.
References g_InstancesDone, g_MaxConcurrent, g_ReaderCount, g_SharedCounter, g_TestComplete, g_TestResult, and g_WriterCount.
Referenced by RunTest().
|
static |
Definition at line 50 of file test_rwmutex.cpp.
Referenced by ResetTestState(), stk::test::rwmutex::ConcurrentReadersTask< _AccessMode >::Run(), stk::test::rwmutex::ReaderWriterAlternationTask< _AccessMode >::Run(), stk::test::rwmutex::StressTestTask< _AccessMode >::Run(), and stk::test::rwmutex::WriterExclusivityTask< _AccessMode >::Run().
|
static |
Definition at line 53 of file test_rwmutex.cpp.
|
static |
Definition at line 48 of file test_rwmutex.cpp.
Referenced by ResetTestState(), stk::test::rwmutex::ConcurrentReadersTask< _AccessMode >::Run(), and stk::test::rwmutex::ReaderWriterAlternationTask< _AccessMode >::Run().
|
static |
|
static |
Definition at line 45 of file test_rwmutex.cpp.
Referenced by ResetTestState(), stk::test::rwmutex::ReaderWriterAlternationTask< _AccessMode >::Run(), stk::test::rwmutex::ReadUnlockWakesWriterTask< _AccessMode >::Run(), stk::test::rwmutex::StressTestTask< _AccessMode >::Run(), stk::test::rwmutex::TimedReadLockTask< _AccessMode >::Run(), stk::test::rwmutex::TimedWriteLockTask< _AccessMode >::Run(), stk::test::rwmutex::TryReadLockWhileWriterTask< _AccessMode >::Run(), stk::test::rwmutex::WriterExclusivityTask< _AccessMode >::Run(), stk::test::rwmutex::WriterPriorityTask< _AccessMode >::Run(), and stk::test::rwmutex::WriterStarvationTask< _AccessMode >::Run().
|
static |
Definition at line 49 of file test_rwmutex.cpp.
Referenced by ResetTestState(), and stk::test::rwmutex::WriterStarvationTask< _AccessMode >::Run().
|
static |
Definition at line 44 of file test_rwmutex.cpp.
Referenced by ResetTestState(), stk::test::rwmutex::ConcurrentReadersTask< _AccessMode >::Run(), stk::test::rwmutex::ReaderWriterAlternationTask< _AccessMode >::Run(), stk::test::rwmutex::ReadUnlockWakesWriterTask< _AccessMode >::Run(), stk::test::rwmutex::StressTestTask< _AccessMode >::Run(), stk::test::rwmutex::TimedReadLockTask< _AccessMode >::Run(), stk::test::rwmutex::TimedWriteLockTask< _AccessMode >::Run(), stk::test::rwmutex::TryReadLockWhileWriterTask< _AccessMode >::Run(), stk::test::rwmutex::WriterExclusivityTask< _AccessMode >::Run(), stk::test::rwmutex::WriterPriorityTask< _AccessMode >::Run(), stk::test::rwmutex::WriterStarvationTask< _AccessMode >::Run(), and RunTest().
|
static |
Definition at line 56 of file test_rwmutex.cpp.
Referenced by stk::test::rwmutex::ConcurrentReadersTask< _AccessMode >::Run(), stk::test::rwmutex::ReaderWriterAlternationTask< _AccessMode >::Run(), stk::test::rwmutex::ReadUnlockWakesWriterTask< _AccessMode >::Run(), stk::test::rwmutex::StressTestTask< _AccessMode >::Run(), stk::test::rwmutex::TimedReadLockTask< _AccessMode >::Run(), stk::test::rwmutex::TimedWriteLockTask< _AccessMode >::Run(), stk::test::rwmutex::TryReadLockWhileWriterTask< _AccessMode >::Run(), stk::test::rwmutex::WriterExclusivityTask< _AccessMode >::Run(), stk::test::rwmutex::WriterPriorityTask< _AccessMode >::Run(), and stk::test::rwmutex::WriterStarvationTask< _AccessMode >::Run().
|
static |
Definition at line 47 of file test_rwmutex.cpp.
Referenced by ResetTestState(), and stk::test::rwmutex::WriterPriorityTask< _AccessMode >::Run().