Как запустить обработку на grpc сервере сразу несколько асинхроных вызовов?
Добрейшего дня. Я только начинаю изучение grpc, прочитал доку и кучу статей, но так и не нашел ответ на свой вопрос. У меня есть сервер, котороый может принимать 4 асинхроных вызвова(1к1, 1кМ, Мк1 и МкМ), как правильно запустить цикл while?.
источники
https://habr.com/ru/articles/340758/
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);
}
}