How does one store threads in a vector in c++?

I currently have this.

Code:
std::vector<std::thread> threads;
threads.push_back(std::move(tmp));
Where tmp is a thread. This, however, creates a segmentation fault when trying to access
the thread again.

Please help