Я делаю приложение (С++), которое является клиентом веб-сокета и сервером веб-сокета. Для этого я использую библиотеку websocketpp. Чтобы сделать приложение и клиентом, и сервером, я хочу, чтобы endpoint1.run()
и endpoint2.listen(port)
были многопоточными. Здесь что-то идет не так.
Обычно (один поток) я использую: endpoint.listen(port);
, который работает.
Чтобы сделать его многопоточным, я использую:
boost::thread t(boost::bind(&server::listen, &endpoint, port));
sleep(1);
cout << "After thread! \n";
t.join();
Однако я получаю сообщение об ошибке:
main.cpp:116: error: no matching function for call to ‘bind(<unresolved overloaded function type>, websocketpp::server*, uint16_t&)’
server::listen
— это перегруженная функция, должен ли я называть ее по-другому в bind?