停止C ++中的特定线程

时间:2018-07-17 17:10:03

标签: c++ multithreading

我是多线程技术的新手,正在尝试创建一个支持多线程的应用程序。但是我想停止和特定线程。 我看到了rhe终止()函数,但是它将停止所有线程。

std::thread at(receivedfxn, sock);
at.detach();

这是我想停止的话题,所以任何人都可以告诉我解决方法。

1 个答案:

答案 0 :(得分:1)

通常,只有一种正确的方法可以使线程在正常程序流中结束,即通过返回线程函数。

我不知道您的receivedfxn到底能做什么,但是我怀疑它会等待一些数据到达sock然后返回!停止该线程的自然方法是关闭套接字,这反过来又会导致任何待处理的接收操作被中断并返回……