前言 开发中引入了异步和多线程的来提高程序性能,也就意味着线程安全成为了多线程的一个障碍,因此线程锁应运而生,而锁如果用不好,还会造成死锁的风险...
base64加密 base64 编码是现代密码学的基础 基本原理: 原本是 8个bit 一组表示数据,改为 6个bit一组表示数据,不足的部分补...
iOS设备的分辨率和尺寸 (参考The Ultimate Guide To iPhone Resolutions[https://www.pai...
一、测试背景概述 随着移动互联网时代的发展,移动终端的自动化测试日益活跃,总体来看在Android平台上的自动化工具和实践比较多,IOS的UI自...
前言 开发中引入了异步和多线程的来提高程序性能,也就意味着线程安全成为了多线程的一个障碍,因此线程锁应运而生,而锁如果用不好,还会造成死锁的风险...
单例 说起单例,我们一般使用GCD的dispath_once来创建单例 对于单例,需要知道以下两个问题: 1.单例为什么只执行一次,底层是如何控...
异步函数 先看下dispatch_async的底层实现 上图我们发现有两个主要方法: 1._dispatch_continuation_init...
GCD简介 GCD全称:Grand Central Dispatch GCD是纯C语言,提供了非常多的强大函数 GCD是非常高效的多线程开发方式...
线程与进程 线程 1.线程是进程的基本执⾏单元,⼀个进程的所有任务都在线程中执⾏ 2.进程要想执⾏任务,必须得有线程,进程⾄少要有⼀条线程 3....