summaryrefslogtreecommitdiff
path: root/src/systemtask/SystemMonitor.h
diff options
context:
space:
mode:
authorMax Friedrich <minacode@users.noreply.github.com>2022-04-19 00:40:29 +0200
committerGitHub <noreply@github.com>2022-04-19 00:40:29 +0200
commitf84a0a38972e6b6d9a537dc9de2e2c416312f882 (patch)
tree3ce9dab83f8b6af8e9df1c8d3aa0219f5a67acbe /src/systemtask/SystemMonitor.h
parenta1db9fca136493eef38e536abaa660dd6ce23e57 (diff)
parented91b5a9981898078ad8e4cf105b5d52c7b63dfe (diff)
Merge branch 'develop' into remove-nm-reference
Diffstat (limited to 'src/systemtask/SystemMonitor.h')
-rw-r--r--src/systemtask/SystemMonitor.h40
1 files changed, 6 insertions, 34 deletions
diff --git a/src/systemtask/SystemMonitor.h b/src/systemtask/SystemMonitor.h
index 45c02c2c..08c87401 100644
--- a/src/systemtask/SystemMonitor.h
+++ b/src/systemtask/SystemMonitor.h
@@ -1,44 +1,16 @@
#pragma once
-#include <FreeRTOS.h>
+#include <FreeRTOS.h> // declares configUSE_TRACE_FACILITY
#include <task.h>
-#include <nrf_log.h>
namespace Pinetime {
namespace System {
- struct DummyMonitor {};
- struct FreeRtosMonitor {};
-
- template <class T> class SystemMonitor {
- public:
- SystemMonitor() = delete;
- };
-
- template <> class SystemMonitor<DummyMonitor> {
+ class SystemMonitor {
public:
- void Process() const {
- }
- };
-
- template <> class SystemMonitor<FreeRtosMonitor> {
- public:
- void Process() const {
- if (xTaskGetTickCount() - lastTick > 10000) {
- NRF_LOG_INFO("---------------------------------------\nFree heap : %d", xPortGetFreeHeapSize());
- auto nb = uxTaskGetSystemState(tasksStatus, 10, nullptr);
- for (uint32_t i = 0; i < nb; i++) {
- NRF_LOG_INFO("Task [%s] - %d", tasksStatus[i].pcTaskName, tasksStatus[i].usStackHighWaterMark);
- if (tasksStatus[i].usStackHighWaterMark < 20)
- NRF_LOG_INFO("WARNING!!! Task %s task is nearly full, only %dB available",
- tasksStatus[i].pcTaskName,
- tasksStatus[i].usStackHighWaterMark * 4);
- }
- lastTick = xTaskGetTickCount();
- }
- }
-
+ void Process();
+#if configUSE_TRACE_FACILITY == 1
private:
mutable TickType_t lastTick = 0;
- mutable TaskStatus_t tasksStatus[10];
+#endif
};
}
-} \ No newline at end of file
+}