diff --git a/lib/src/task/task.cpp b/lib/src/task/task.cpp index 7721c5a..d5009d6 100644 --- a/lib/src/task/task.cpp +++ b/lib/src/task/task.cpp @@ -117,13 +117,15 @@ TaskStatus_t TaskRun(void) { if (p->runcnt == 0) { p->enable = false; p->lasttime = 0; - } else if (p->runcnt > 0) { - p->runcnt--; + continue; } if (p->callback) { p->callback(p, p->userdata); p->lasttime = platformTicksFunc() + p->intervaltime; } + if (p->runcnt > 0) { + p->runcnt--; + } } p = p->next; } diff --git a/main.c b/main.c index 308bdda..8790172 100644 --- a/main.c +++ b/main.c @@ -8,6 +8,13 @@ #include "tool.h" #include +/** + * @brief 测试函数执行时间 + * @param name: [输入] 测试名称 + * @param pFunction: [输入] 指向待测试函数的指针 + * @return void + * @example Test("FunctionName", functionName); +**/ void Test(char *name, void (*pFunction)()) { clock_t start, end; double cpu_time_used;