Приведет ли это использование арены GRPC к утечке памяти?C++

Программы на C++. Форум разработчиков
Anonymous
Приведет ли это использование арены GRPC к утечке памяти?

Сообщение Anonymous »

Я сделал упрощение кода. Не весь код представлен, а только важные части, которые должны быть достаточно, чтобы дать ответ.

Код: Выделить всё

// grpc service method implementation
::grpc::Status AbcService::GetDetail(::grpc::ServerContext* context, const ::google::protobuf::Empty* request, ::abc::Detail* response)
{
response = _detail->toGrpc(response->GetArena());
}

// arena usage
namespace abc {
abc::Detail* Detail::toGrpc(google::protobuf::Arena* arena) const
{
return google::protobuf::Arena::CreateMessage(arena);
}
}
Вопрос заключается в том, приведет ли это назначение в методе GetDetail к утечке памяти, поскольку это второе распределение :: ABC :: Detail на арене.
Если это приведет к утечке памяти, какие изменения должны быть внесены, чтобы разрешить Google :: protobuf :: arena быть единственным аргументом метода togrpc ?

Подробнее здесь: https://stackoverflow.com/questions/794 ... emory-leak

Вернуться в «C++»