一、NSNotification使用 1、向观察者中心添加观察者: 方式一:观察者接收到通知后执行任务的代码在发送通知的线程中执行 方式二:观察者接受到通知后执行任务的代码在...
一、NSNotification使用 1、向观察者中心添加观察者: 方式一:观察者接收到通知后执行任务的代码在发送通知的线程中执行 方式二:观察者接受到通知后执行任务的代码在...
最近在写APM相关的东西,所以整理了一下iOS中卡顿监测的那些方案,不了解卡顿的原理的可以看这篇文章iOS 保持界面流畅的技巧,写的很好。 FPS FPS (Frames P...
背景 我们知道,http 通信存在以下问题: 通信使用明文可能会被窃听 不验证通信方的身份可能遭遇伪装 无法证明报文的完整型,可能已遭篡改 使用 https 可以解决数据安全...
前言 这一块主要为了面试讲项目准备,尽量理论与实践相结合吧,能把搜到的资料都实现最好 目前主要是为tableView的优化进行研究,把涉及到的异步绘制【图层问题】,网络请求中...
目录: 1.图像显示原理 2.图像显示原理2.1 图像到屏幕的流程2.2 显示器显示的流程 3.卡顿、掉帧3.1 垂直同步 Vsync + 双缓冲机制 Double Buf...
GPU渲染机制: CPU 计算好显示内容提交到 GPU,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照 VSync 信号逐行读取帧缓冲区的数据,经过可能的数模...
在iOS离屏渲染介绍了离屏渲染的逻辑和原理,我们知道离屏渲染对于性能会有较大的消耗,那么开发中怎么避免产生离屏渲染或者优化离屏渲染呢? 离屏渲染的检测 Debug功能调试打开...
这是并发控制方案的系列文章,介绍了各种锁的使用及优缺点。自旋锁[https://github.com/pro648/tips/blob/master/sources/%E7%...
1. UIView的绘制流程图 UIView调用setNeedsDisplay,但是没立即进行视图的绘制工作; UIView调用setNeedDisplay后,系统调用vie...
Https原理解析 序言 我们已知http是基于明文传输,所以在网络中传输一些隐私数据没有办法保证一些安全性.所以我们可以通过一些加密方式来完成,加密方式有对称加密和非对称加...
本文首发于 个人博客 在IOS开发中,同步锁相信大家都使用过,即 @synchronized ,这篇文章向大家介绍一些 @synchronized的原理和使用。 @sync...
任何时候探究一些原理都得从源码抓起 objc_sync 关于@synchronized, 使用场景一:写单例的时候, 使用场景二:在多线程的情况下,进行加锁操作. 那么锁是如...
前言 iOS开发中由于各种第三方库的高度封装,对锁的使用很少,刚好之前面试中被问到的关于并发编程锁的问题,都是一知半解,于是决定整理一下关于iOS中锁的知识,为大家查缺补漏。...
主要讲解OSSpinLock/os_unfair_lock/pthread_mutex_t锁的基本用法 常见锁的分类: 自旋锁OSSpinLock 互斥锁os_unfair_...
1、AutoreleasePool的作用 AutoreleasePool被称为自动释放池,在释放池中的调用了autorelease方法的对象都会被压在该池的顶部(以栈的形式管...
第一次握手假如发送的seq = x
第三次握手还会发送 seq = x + 1 的包
面试必备HTTP之TCP三次握手及四次挥手详解前言 在面试中,经常会问到TCP的三次握手和四次挥手。最近在面试3-5年开发经验的程序员,发现能简单谈谈三次握手的寥寥无几,能剖析出整个具体过程的十不存一。这就是本篇文章诞生...
前言 启动时间是衡量应用品质的重要指标。 本文首先会从原理上出发,讲解iOS系统是如何启动APP的,然后从main函数之前和main函数之后俩个角度去分析如何优化启动时间。 ...
在了解socket网络编程之前,我们需要先知道以下几个问题: 网络中进程之间如何通信? Socket是什么? TCP和UDP的区别? socket中TCP的三次握手和四次握手...