ios – CG栅格数据 – CGProviderCreateWithCopyOfData – 无法释放?

前端之家收集整理的这篇文章主要介绍了ios – CG栅格数据 – CGProviderCreateWithCopyOfData – 无法释放?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图找到内存泄漏的来源,详见此处:

Unable to Release Quartz 2D and Core Text created Images

当我使用乐器时,我可以看到有一种名为CG Raster Data的东西,其尺寸稳步增长,从未发布过.

有谁知道可能导致这种情况的原因以及如何补救?看起来这可能是某种图像缓存,但是可以从代码中清除它吗?

解决方法

通过简单地反复推送和弹出视图控制器,我对CG Raster Data内存的问题也增加了.我花了一段时间以为这是一个绘图代码的问题.我终于将它跟踪到一个代表,并没有弱引用被推送和弹出的视图控制器,所以当我弹出视图控制器时,它没有被释放. CG栅格数据恰好是该视图控制器占用空间的最大部分,所以我错误地将问题归结为最初,当它真的是视图控制器本身没有被释放时(因此,没有发布它的视图,一些其中有CG Raster Data).

简而言之:如果您看到CG Raster Data发生内存泄漏,请查看可能具有视图的视图控制器,并确保它们正在被释放.

猜你在找的iOS相关文章