开始前的提问:1.离屏渲染是什么?2.离屏渲染在哪一步进行的?3.离屏渲染的影响在哪?4.设置圆角一定会触发离屏渲染吗?5.如何优化离屏渲染? 深入理解了上面几个问题足以回答...
开始前的提问:1.离屏渲染是什么?2.离屏渲染在哪一步进行的?3.离屏渲染的影响在哪?4.设置圆角一定会触发离屏渲染吗?5.如何优化离屏渲染? 深入理解了上面几个问题足以回答...
相关文献:启动优化(一)-理论篇[https://www.jianshu.com/p/d724ebff917b]启动优化(二)-二进制重排篇[https://www.jian...
参考 dyld源码[https://opensource.apple.com/tarballs/dyld/] 个人注释的源码[https://github.com/iWind...
最近一段时间经常遇到关于iOS性能优化、卡顿优化的问题,今天在这里总结一下。一般困扰我们的性能优化的问题一般是你在项目中是怎么优化内存的?优化你是从哪几方面着手?列表卡顿的原...
前言 在项目中经常用到block,使用不当就很容易因为循环引用而造成内存泄漏。本文分析了block循环引用形成原因以及处理办法,如果有什么不对或者疑问请留言。 什么情况下bl...
前言 了解http 协议中的cookie和session机制的作用和原理,以及它们在iOS开发中的使用。 Cookie 1、什么是Cookie Cookie是由服务器端生成,...
我们自定义了导航控制器的leftItem后导致系统的右滑返回手势失效,其原因是系统的返回手势代理对象被置空了, 然后我通过重新设置返回手势的代理后(这点网上很多人介绍过,不谈...
NSProxy 一、什么是NSProxy (1)NSProxy是一个抽象的基类,是根类,与NSObject类似; (2)NSProxy和NSObject都实现了<NSObje...
为什么我找不到我的崩溃日志? 当我正在努力工作(划水)的时候,总有同事上来就滴我一下:同学,我打开首页的时候崩溃了,你帮我看下为什么手机上没有崩溃日志了?这时,我总想来一...
剥离符号 strip:移除指定符号。在Xcode中默认strip是在Archive的时候才会生效,移除对应符号 strip命令的使用:strip -x:除了全局符号都可以移除...
Xcode默认的编译的时候,会生成Debug Symbols信息,这些信息可以使得我们在调试的时候能够看到代码执行的类、方法以及变量的信息;对于线上crash,可以通过这些信...
引言 定时器:A timer waits until a certain time interval has elapsed and then fires, sending ...
fishhook 的本质是遍历 image 中的懒加载和非懒加载表,将里面的函数地址替换成自定义的函数地址; 因为 objc 的方法调用走的是消息查找和转发,所以 fishh...
一、虚拟内存 在早期的操作系统中没有虚拟内存的概念,叫做物理地址。大概如下: 这个时候会将整个应用程序加载到内存,当内存不够用的时候需要关闭应用程序才能打开新的应用程序。 随...
在之前做debug工具的时候,就有一个想法,在页面产生卡顿的时候,如果能够获取主线程的函数调用栈就好了,就可以分析出哪里出现了性能瓶颈。由于当时对这部分内容还不是很了解,就没...
UI笔记(一) 前言:作为一名UI设计师,在工作中不可避免会遇到px/pt/dp等基础单位,这些并不是一成不变的,场景的不同决定了其所承载的职能也不同,本文将根据查阅到的资料...
现在iOS设备几乎已经都是ARM64架构,此外,Mac M1芯片的电脑也是基于ARM64架构,本文对ARM64汇编做一个简单的介绍。本文后面给出了一个汇编案例,通过汇编窥探...
什么是栅栏函数 在GCD中的栅栏函数有dispatch_barrier_async(异步)和dispatch_barrier_sync(同步),异步不会阻塞当前线程,反之则会...