Я реализую клиент-серверное приложение, в котором сервер может обрабатывать более одного соединения, и для этого я пытаюсь использовать многопоточность с лямбда-выражениями. Ниже приведен мой пример кода.
void start() {
std::thread thread ([=] { return serverConnect(port, IpAddr); } );
}
И мой код serverConnect
int serverConnect(int tcpPort, const string& hostname) {
con = IedConnection_create();
IedConnection_connect(con, &error, hostname.c_str(), tcpPort);
std::cout << "Connection Status :" << error << std::endl;
return error;
}
Что мне нужно, так это то, что мне нужно напечатать состояние соединения (переменная ошибка) в моем start () функция. Прямо сейчас я печатаю в моей функции serverConnect ().
- Как это сделать?
- Что именно будет иметь мой поток?
- Как сохранить возвращаемое лямбда-значение, используя мой поток?