Многопоточность в C ++ с лямбда-выражением - PullRequest
0 голосов
/ 17 марта 2020

Я реализую клиент-серверное приложение, в котором сервер может обрабатывать более одного соединения, и для этого я пытаюсь использовать многопоточность с лямбда-выражениями. Ниже приведен мой пример кода.

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 ().

  1. Как это сделать?
  2. Что именно будет иметь мой поток?
  3. Как сохранить возвращаемое лямбда-значение, используя мой поток?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...