co-maps/libs/storage/storage_tests/task_runner.cpp
2025-11-22 13:58:55 +01:00

28 lines
500 B
C++

#include "storage/storage_tests/task_runner.hpp"
#include "base/assert.hpp"
namespace storage
{
TaskRunner::~TaskRunner()
{
CHECK(m_checker.CalledOnOriginalThread(), ());
}
void TaskRunner::Run()
{
CHECK(m_checker.CalledOnOriginalThread(), ());
while (!m_tasks.empty())
{
TTask task = m_tasks.front();
m_tasks.pop();
task();
}
}
void TaskRunner::PostTask(TTask const & task)
{
CHECK(m_checker.CalledOnOriginalThread(), ());
m_tasks.push(task);
}
} // namespace storage