ios - MTLCcommandBuffer.commit() 在哪个线程上操作?
问题描述
使用金属,我正在绘制 YUV420 图像。
一个问题是,当 MTLCcommandBuffer.commit() 时,Pinch 或 Pan 等手势动作会变慢。
commit() 内部在哪个线程上运行?我想知道它是在主线程上工作还是在单独的线程上工作。
如果它在主线程上工作,有没有办法在单独的线程上操作它?
@objc func pinchAction(_ sender: UIPinchGestureRecognizer) {
// this method called slowly
}
let commandBuffer: MTLCommandBuffer = (commandQueue?.makeCommandBuffer())!
func draw(in view: MTKView) {
// do something...
commandBuffer.present(view.currentDrawable!)
commandBuffer.commit()
}
解决方案
推荐阅读
- tensorflow2.0 - 如何在从 Yolov4 转换为 TensorFlow Lite 模型的 yolov4-416 自定义模型中查找 mAP 和 f1 分数
- javascript - Jquery 通过单击按钮刷新并删除“隐藏”属性
- c# - URL路由Visual Studio C#的最佳方式
- c# - 如何将文件上传到网络上的不同端口?
- python - 使用正则表达式在python中查找不同的链接结构
- node.js - 带有等待的猫鼬查询返回未定义
- python - 使用python ev3进行多线程,连接方法不起作用
- docker - Powershell:使用docker时从错误流重定向输出的问题
- python - (Discord.py) 使用 on_guild_join 事件为 dm 消息添加延迟
- c - 如何查找和替换 C 字符串中的多个或所有出现