VkQueue: Destruct the object.

We were never destructing VkQueues, but were freeing the underlying memory.

Bug: b/133127573
Change-Id: Id6d9f615428073adad7267dd1bd48ced17f1b433
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31592
Tested-by: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
diff --git a/src/Vulkan/VkQueue.cpp b/src/Vulkan/VkQueue.cpp
index 262bef6..f1ead9a 100644
--- a/src/Vulkan/VkQueue.cpp
+++ b/src/Vulkan/VkQueue.cpp
@@ -81,7 +81,7 @@
 	queueThread = std::thread(TaskLoop, this);
 }
 
-void Queue::destroy()
+Queue::~Queue()
 {
 	Task task;
 	task.type = Task::KILL_THREAD;
@@ -91,8 +91,6 @@
 	ASSERT_MSG(pending.count() == 0, "queue has work after worker thread shutdown");
 
 	garbageCollect();
-
-	renderer.reset(nullptr);
 }
 
 VkResult Queue::submit(uint32_t submitCount, const VkSubmitInfo* pSubmits, VkFence fence)