记录一次内存泄漏发现过程
前言 本文主要记录在iOS开发中发现的一个系统级别内存泄露的过程。测试iOS系统11.2.1,设备iPhoneX。
前言 本文主要记录在iOS开发中发现的一个系统级别内存泄露的过程。测试iOS系统11.2.1,设备iPhoneX。
前言 我们在查看iOS应用内存时,最常见的手法就是查看左边的Debug Navigator。不知你是否也曾困惑于这个内存究竟包括哪些部分,或者使用Allocations模版观察内存时发现无法和Debug Navigator显示的内存匹配上,这篇文章将带你解答这些疑惑。
前言 提到iOS的内存泄漏检测,第一个想到的应该就是Instruments的Leaks检测模版。不过使用过的人一般都会觉得这个检测不准确,有时候明明泄露了,但是它却检测不出来。本文将带大家深入了解Leaks模版检测泄漏的原理,知道原理之后,你就会明白哪些类型的内存泄漏可以被检测,哪些无法被检测了。
什么是VM Tracker VM Tracker是Xcode Instruments自带的一个内存分析工具,可以帮助你快速查看虚拟内存块的用量状态以及根据虚拟内存块的tag进行分类。如果你想知道关于虚拟内存的相关知识,可以先阅读探索iOS内存分配这篇文章,如果你对虚拟内存以及VM Region不太了解的话,阅读下...
前言 在运行iOS(OSX)程序时,左侧的Debug Navigator中可以看见当前使用的内存。我们也可以使用Instruments的Allocations模板来追踪对象的创建和释放。不知道你是否也曾困惑于Debug Navigator显示的内存和Allocations显示的总内存对不上号的问题。本篇文章将带你...
前言 不知你是否遇到过将CALayer旋转360度的需求,如果有的话,你也许会尝试使用transform做旋转动画,然后发现。。。CALayer根本就不动。本文将深入解释并解决这个问题。
前言 今年的首要研究对象OpenGL基本研究的差不多了,突发奇想,想用CoreGraphics根据OpenGL的渲染流水线,渲染出3D图形来。折腾了2天,写出了个demo,效果如下。 其实这种通过2D渲染引擎渲染3D的技术方案在Flash时代我就听说了,但是当时对于3D技术不是很了解,并没有做深入研究。
获取示例代码,本文代码在分支ARKit中。
获取示例代码,本文代码在分支ARKit中。
点击获取示例代码
点击获取本文示例代码,本文代码在分支transition中。
点击获取本文示例代码
获取示例代码
获取示例代码 前言 工作中有一个需求,将服务端已经生成好的黑白二维码变成渐变的二维码,具体效果如下。 本文将介绍如何使用CALayer的Mask实现渐变二维码的效果。下面是我们需要处理的二维码图片。