-
前言本文主要目的是介绍 NSThread、GCD、NSOperation 常见的使用方式
NSThreadNSThread 是苹果官方提供 面向对象 的线程操作技术,是对 thread 的上层封装,比较偏向于底层,简单方便,可以直接操作线程对象,使用...
-
GCD简介
什么是GCD?
全称是 Grand Central Dispatch,纯 C 语言,提供了非常强大的函数
2、GCD 的优势
GCD 是苹果公司为多核的并行运算提出的解决方案
GCD 会自动利用更多的 CPU 内核(比如双核、四核)
...
-
前言本文的目的在于了解 进程、线程、多线程、线程池 等的基本概念及原理
线程和进程的定义线程
线程是进程的基本执行单元,一个进程的所有任务都在线程中执行
进程要想执行任务,必须得有线程,一个进程至少要有一条线程
程序启动会默认开启一条线程,这条线程...
-
前言在iOS中,内存主要分为 栈区、堆区、全局区、常量区、代码区 五个区域,如下图所示:
栈区定义
栈是 系统数据结构,其对应的 进程或者线程是唯一的
栈是 向低地址扩展 的数据结构
栈是一块 连续的内存区域,遵循 先进后出(FILO) 原则...
-
前言KVO 全称 Key Value Observing,中文名为 键值观察,KVO是一种机制,它 允许将其他对象的指定属性的更改通知给对象
在 key Value Observing Programming Guide 官方文档中,有这么一句话:...
-
前言KVC 的全称是 Key-Value-Coding ,翻译成中文是 键值编码 ,键值编码是由NSKeyValueCoding 非正式协议启动的一种机制,对象采用该协议来间接访问其属性。既可以通过一个 字符串Key来访问某个属性。这种间接访问机制补...
-
method-swizzling 是什么?
method-swizzling 的含义是 方法交换,其主要作用是 在运行时将一个方法的实现替换成另一个方法的实现,这就是我们常说的 iOS黑魔法
在OC中就是 利用method-swizzling实现A...
-
【面试题1】Runtime Associate 方法关系的对象,需要在dealloc中释放?当我们对象释放时,会调用 dealloc
C++函数释放:objc_cxxDestruce
移除关联属性:_object_remove_associatio...
-
-