#pragma once #include "common.hpp" namespace big { class fiber_pool { public: explicit fiber_pool(std::size_t num_fibers); ~fiber_pool(); void queue_job(std::function func); void fiber_tick(); static void fiber_func(); private: std::recursive_mutex m_mutex; std::stack> m_jobs; }; inline fiber_pool *g_fiber_pool{}; }