🫀 Adds task to analytics
This commit is contained in:
@@ -52,8 +52,7 @@ class AnalyticsService {
|
||||
doc["cpu0_usage"] = _taskManager->getCpuUsage(0);
|
||||
doc["cpu1_usage"] = _taskManager->getCpuUsage(1);
|
||||
doc["cpu_usage"] = _taskManager->getCpuUsage();
|
||||
// Add _taskManager->getTaskNames() as a JSON array
|
||||
JsonArray tasks = doc["tasks"].as<JsonArray>();
|
||||
JsonArray tasks = doc["tasks"].to<JsonArray>();
|
||||
for (auto const &task : _taskManager->getTasks()) {
|
||||
JsonObject nested = tasks.add<JsonObject>();
|
||||
nested["name"] = task.name;
|
||||
|
||||
@@ -84,6 +84,7 @@ class TaskManager {
|
||||
}
|
||||
|
||||
std::vector<task_t> getTasks() {
|
||||
update();
|
||||
std::vector<task_t> tasks;
|
||||
for (auto const &task : _tasks) tasks.push_back(task.second);
|
||||
return tasks;
|
||||
@@ -94,9 +95,15 @@ class TaskManager {
|
||||
int getKernelTaskCount() const { return uxTaskGetNumberOfTasks(); }
|
||||
|
||||
void update() {
|
||||
for (auto const &task : _tasks) {
|
||||
_tasks[task.first].priority = uxTaskPriorityGet(task.second.handle);
|
||||
_tasks[task.first].coreId = xTaskGetAffinity(task.second.handle);
|
||||
for (auto task = _tasks.begin(); task != _tasks.end();) {
|
||||
eTaskState state = eTaskGetState(task->second.handle);
|
||||
if (state == eDeleted) {
|
||||
task = _tasks.erase(task);
|
||||
} else {
|
||||
_tasks[task->first].priority = uxTaskPriorityGet(task->second.handle);
|
||||
_tasks[task->first].coreId = xTaskGetAffinity(task->second.handle);
|
||||
++task;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user