我在主函数中创建了两个线程。我想在另一个线程中的一个线程上调用“join()”方法。
我怎么打电话??
我将“connect”和“sender”作为两个线程运行。现在我想在“void ClientSocket::sender()”方法内的“connect”线程上调用“join()”方法。
可以打电话吗?
这些是我作为两个线程运行的代码片段。
int ClientSocket::Connect()
{
isConnected = connect(clientSock, (LPSOCKADDR)&serverInfo,sizeof(serverInfo));
return isConnected;
}
void ClientSocket::sender()
{
if (isConnected == 0)
{
send(clientSock, readBuffer.str().c_str(), strlen((char *)readBuffer.str().c_str()), 0);
}
}
最佳答案
在所有函数之外定义线程处理程序,即将它们定义为全局的。因此它们将在任何地方可用,您可以在所有其他函数中调用两者的 join
方法。
关于c++ - 如何在 C++ 中的另一个函数中调用一个线程的 "join()"方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30560949/