0

让我们看看我能问一个多么简单的问题。我有:

void TCPClient::test(const boost::system::error_code& ErrorCode)
{
    // Anything can be here
}

我想从另一个班级打电话给它。我有一个创建线程的全局 boost::thread_group

clientThreadGroup->create_thread(boost::bind(&TCPClient::test,client, /* this is where I need help */));

但我不确定如何调用测试,如果这甚至是正确的方法。

作为对整个项目的解释,我正在客户端和服务器之间创建一个 tcp 连接,并有一个方法“send”(在另一个类中),当需要发送数据时将调用该方法。我目前的目标是能够调用 test (其中当前有 async_send )并通过调用时已经设置的套接字发送信息。但是,我对如何实施的其他想法持开放态度,如果这被证明太困难,我可能会致力于创建消费者/生产者模型。

我可以在这个项目中使用任何一种,但我稍后必须实现监听以便以后能够从服务器接收控制数据包,所以如果有任何关于使用哪种方法的建议,我将不胜感激。

4

1 回答 1

0
boost::system::error_code err;
clientThreadGroup->create_thread(boost::bind(&TCPClient::test,client, err));

这对我有用。我不知道如果出现问题,它是否真的会出错,所以如果有人想在那里纠正我,我会很感激(如果只是为了体验的话)。

于 2013-05-22T17:44:38.393 回答