swift - 金属内存泄漏
问题描述
我的金属管道漏水了,我不知道在哪里...
我已经尝试过 Malloc Stack Diagnostics,它指出了金属设备和应用程序委托的创建。所以不太确定在哪里看。
有什么调试技巧吗?
我正在做一些事情,泄漏指向我的命令缓冲区。
我在一些线程之间切换,主要是从一些完成处理程序回到主线程。我应该在哪个线程上进行渲染设置?
更新:
我正在测试将我的所有渲染设置移动到后台线程:
let queue = DispatchQueue(label: "render", qos: .userInteractive, attributes: .concurrent, autoreleaseFrequency: .never, target: nil)
queue.async {
// Render Setup
}
解决方案
推荐阅读
- c++ - Visual Studio 查找未覆盖的纯虚函数
- r - 将第一行粘贴到列表中的列名
- python - 使用 Numba 将单例数组分配给数组元素
- php - Symfony 3 - 教义 - 大查询的困难
- sqlite - SQLite 如何防止延迟事务的死锁?
- gradle - 我应该在 build.gradle 中添加什么来设置 Idea 的 Project JDK?
- javascript - ReactJS Accordion For循环键未定义?
- javascript - 如何使用 JavaScript 从 div 的输入字段中获取输入值
- jquery - 如何为下一部分分离模型弹出窗口?
- node.js - 猫鼬种群数量