IOS PSO Async Compile Crash
崩溃堆栈
崩溃链接:
调用代码:
崩溃分析
使用XCode Attach到IOS进程后,打开汇编面板:
将会看到对BlendState
的地址解引用后得到的值为0x60000000,说明内存被写坏或者释放了
在BlendState创建时下个断点,获取BlendState的地址,然后对该地址下内存断点:
1 | watchpoint set expression -- 地址 |
继续运行后触发内存断点,堆栈如下图:
最终确定原因为:BlendState创建后返回带引用的对象,GraphicsInitializer接收时并未加引用,导致出作用域后就被释放了
修复
UE官方修复CL:11574776,对BlendState, DepthStencilState,RasterizationState做了个池,并AddRef
Comments