Files
UwU-Engine/UwURenderEngine/RenderEngine/GPU_GarbageCollector.cpp
T

23 lines
492 B
C++

#include "GPU_GarbageCollector.h"
GPU_GarbageCollector::GPU_GarbageCollector(VkDevice device) : device_(device)
{}
void GPU_GarbageCollector::AddGarbage(Garbage garbage)
{
std::scoped_lock lock(m_heap_);
heap_.push_back(garbage);
}
void GPU_GarbageCollector::FreeHeap()
{
std::scoped_lock lock(m_heap_);
for (auto& i : heap_)
{
vkFreeMemory(device_, i.device_memory, nullptr);
vkDestroyBuffer(device_, i.buffer, nullptr);
}
heap_.clear();
}