Как запустить обработку на grpc сервере сразу несколько асинхроных вызовов?

Добрейшего дня. Я только начинаю изучение grpc, прочитал доку и кучу статей, но так и не нашел ответ на свой вопрос. У меня есть сервер, котороый может принимать 4 асинхроных вызвова(1к1, 1кМ, Мк1 и МкМ), как правильно запустить цикл while?.

источники

https://habr.com/ru/articles/340758/

https://github.com/grpc

https://github.com/Nekrolm/grpc_cpp_async_examples

void server::AsyncProtoServerEx::start() {
    new helper::Helper1M(m_service, m_serverQueue);
    new helper::HelperM1(m_service, m_serverQueue);
    new helper::HelperMM(m_service, m_serverQueue);
    new helper::HelperBasic(m_service, m_serverQueue);
    void* tag;
    bool ok;
    while(true) {
        GPR_ASSERT(m_serverQueue->Next(&tag, &ok));
        auto *helper = static_cast<helper::Helper *>(tag);
        helper->proceed(ok);
    }
}

Ответы (0 шт):