--- smsdaemon/TaskManager.cpp 2008/06/15 19:33:02 81 +++ smsdaemon/TaskManager.cpp 2008/06/15 20:06:39 82 @@ -3,9 +3,10 @@ #include "common.h" - +#include TaskManager::TaskManager() + : _lastExecuted(0) { } @@ -19,6 +20,26 @@ } + +void TaskManager::ExecuteTasks() +{ + int now = time(0); + + if (now > _lastExecuted) // only execute the tasks once every second + { + _lastExecuted = now; + + std::map::iterator it; + + for (it = _tasks.begin(); it != _tasks.end(); ++it) + { + Task* tsk = (*it).second; + tsk->ExecuteTask(); + } + } +} + + Task* TaskManager::GetTask(const std::string& taskname) { return _tasks[ taskname ]; @@ -30,7 +51,7 @@ typedef std::map::iterator MapIterator; std::vector task_list; - for (MapIterator it = _tasks.begin(); it != _tasks.end(); it++) + for (MapIterator it = _tasks.begin(); it != _tasks.end(); ++it) { Task* pl = (*it).second; task_list.push_back(pl);