JobQueue (2)
전에 작업했던 원시적인 방법에서 코드를 수정하여 공용 클래스를 만들어서 일감(Job)들을 관리하도록 해보자. 그러기 위해 아래와 같이 템플릿 함수자를 만들어 주자. template class FuncJob { //FuncType은 반환값은 Ret이고 인자로는 Args 여러개를 받아준다. using FuncType = Ret(*)(Args...); public: FuncJob(FuncType func, Args... args) :_func(func), _tuple(args...) { } Ret Execute() { std::apply(_func, _tuple); //C++ 17 } private: FuncType _func; //일종의 콜백함수 std::tuple _tuple; }; 크게 복잡한거 없는 간..
2023.12.29