我正在尝试找出一种方法来从 c++ 中的 unordered_map 中获取线程。
但是,我得到std::thread::thread(const std::thread &) 试图引用已删除的函数。
例子:
#include "stdafx.h"
#include <unordered_map>
#include <thread>
class ThreadContainer
{
std::unordered_map<int, std::thread> map_;
public:
void addThread(int handle, std::thread thread)
{
map_.emplace(std::move(handle), std::move(thread));
}
std::thread getThread(int handle)
{
return map_.at(handle);
}
};
int main()
{
ThreadContainer testing;
return 0;
}
在这个代码示例中,我已经尝试过return map_.at(handle);
,return std::move(map_.at(handle);
但这些似乎都不起作用。
如何从这个 unordered_map 中获取 std::thread ?