C ++ Vulkan Как мне предотвратить утечку памяти от void* в функции, которая называется в цикле? [закрыто]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ Vulkan Как мне предотвратить утечку памяти от void* в функции, которая называется в цикле? [закрыто]

Сообщение Anonymous »

У меня есть кусок кода, который снимает до 2 ГБ памяти за 10 секунд: < /p>

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

  void* data;
vmaMapMemory(mRenderData.rdAllocator, mVertexBufferAlloc, &data);
std::memcpy(data, vertexData.vertices.data(), vertexData.vertices.size() * sizeof(VkVertex));
vmaUnmapMemory(mRenderData.rdAllocator, mVertexBufferAlloc);
< /code>
После снимка памяти в Visual Studio я определил, что переменная пустота типа является виновником. В моем коде есть только 2 места, которые имеют одинаковое сходство, но я покажу кулак, так как они очень похожи. < /P>
Любая помощь?  Вот пример кода: < /p>
void someFunc() {
void* data = new char[1000000];

}
int main() {
for (int i = 0; i < 1000000; i++) {
someFunc();
}
}
Это использует память как свинья.

Подробнее здесь: https://stackoverflow.com/questions/797 ... -is-called
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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