#include <thread>
#include <chrono>
using namespace std:
void f()
{
// Sleeping for a very long while
while (SOCKET s = accept(listening_socket, ...))
{
// ...
}
}
int main()
{
std::thread t(f);
DoSomething();
t.???(); /* What to place here to wake/terminate thread f? */
}
在Win32下,我可以用TerminateThread()
杀死一个线程。但我想要的是一种跨平台的方法来做到这一点。
我应该如何在 C++ 中优雅地做到这一点?