我需要使用模板初始化std::thread

class Loader
{
    template <class T, class ...TArgs>
    static void work(T t, TArgs ...args)
    {
        //do stuff
    }
    template <class T, class ...TArgs>
    static void Load(T t, TArgs ...args)
    {

        thread thr = thread(Loader::work,t,args...);
        thr.join()
    }
}


我把它绑定到自定义类的初始化及其工作上,但是我不知道该如何处理线程。

感谢您的任何建议

最佳答案

您需要明确指定模板中使用的类型:

thread thr = thread(Loader::work<T, TArgs...>,t,args...);

09-26 00:11