SpiecsEngine
 
Loading...
Searching...
No Matches

◆ AsyncTask()

template<typename F , typename ... Args>
static auto Spices::AsyncTask ( ThreadPoolEnum pool,
F && func,
Args &&... args ) -> std::future<decltype(func(std::forward<Args>(args)...))>
static

Definition at line 145 of file ThreadModel.h.

146 {
148
149 if (!(pool == ThreadPoolEnum::Game || pool == ThreadPoolEnum::Custom))
150 {
151 SPICES_CORE_ERROR("task shouble be submit to game/custom thread")
152 return std::future<decltype(func(std::forward<Args>(args)...))>();
153 }
154
155 switch (pool)
156 {
158 return ThreadModel::Get()->GetGameThreadPool()->SubmitPoolTask(func, std::forward<Args>(args)...);
160 return ThreadModel::Get()->GetCustomThreadPool()->SubmitPoolTask(func, std::forward<Args>(args)...);
161 }
162 }
#define SPICES_PROFILE_ZONE
STL namespace.