前言 iOS开发中由于各种第三方库的高度封装,对锁的使用很少,刚好之前面试中被问到的关于并发编程锁的问题,都是一知半解,于是决定整理一下关于iO...
前言 iOS开发中由于各种第三方库的高度封装,对锁的使用很少,刚好之前面试中被问到的关于并发编程锁的问题,都是一知半解,于是决定整理一下关于iO...
iOS Zombie Objects 原理探索 Zombie Object 有什么用 僵尸对象一种用来检测内存错误(EXC_BAD_ACCESS...
IM 的实现方式 使用第三方 IM 服务 在国内有很多的 IM 第三方服务商,底层协议基本上都是基于 TCP 的,例如:"网易云信、环信、融云、...
首先郑重声明,这些面试题的答案都是参考网上的答案和自己理解的部分整合起来,如有错误,欢迎指针。 1 多态的实现 存在虚函数的类至少有一个(多继承...
1.输出堆栈信息 当项目运行出现bug的时候,通常我的做法是在调用对栈出寻找到解决的办法,发现出错调用方法,位置,然后去解决它! 2.断点调试 ...
1、block截获自动变量(局部变量)值 对于 block 外的变量引用,block 默认是将其复制到其数据结构中来实现访问的。也就是说bloc...
delegate设为strong造成的内存泄露(两个对象相互强引用) NSTimer 造成的内存泄露(两个对象相互强引用)self 持有 tim...
ARC下,我们虽然不能再显式调用retain和release了(这些工作编译器自动优化了),但弄懂引用计数对于内存管理仍然非常有用。 一、ret...
原文链接 AutoreleasePool对于iOS开发者来说,可以说是"熟悉的陌生人"。熟悉是因为每个iOS程序都被包围在一个autorelea...
这篇文章源于美团面试官问的我一个问题,为什么Objective-C中有Class和MetaClass这种设计?去掉是否可以?当时的我并没有深入思...