前言: 请思考两个问题。1. weak指针置为nil是线程安全的吗?问详细点就是:当一个对象正在delloc时,如果在另一个线程获取了weak指针,这时获取weak怎么保证线...
IP属地:澳门
前言: 请思考两个问题。1. weak指针置为nil是线程安全的吗?问详细点就是:当一个对象正在delloc时,如果在另一个线程获取了weak指针,这时获取weak怎么保证线...
阅读本文后你将会进一步了解Runtime的实现,享元设计模式的实践,内存数据存储优化,编译内存屏障,多线程无锁读写实现,垃圾回收等相关的技术点。 objc_class(Cla...
weak基本用法 weak是弱引用,用weak描述修饰或者所引用对象的计数器不会加一,并且会在引用的对象被释放的时候自动被设置为nil,大大避免了野指针访问坏内存引起崩溃的情...
原文地址 野指针 当所指向的对象被释放或者收回,但是对该指针没有作任何的修改,以至于该指针仍旧指向已经回收的内存地址,此情况下该指针便称野指针 野指针异常堪称crash界的半...
1. 内存布局相关 学习链接堆区(heap): 向高地址扩展的数据结构,由链表实现,内存不连续,由程序员管理 栈区(stack):向低地址扩展的数据结构,由计算机管理 全局\...
1.NSObject包含了一些其他的方法,需要实现NSObject协议,可以用NSObject来表示id,但是不能用id来表示NSObject 2.id关键字在编译的时候不会...
一、pre-main阶段 ###1.Load dylibs 这一阶段dylib会分析应用依赖的dylib,找到mach-o文件,打开和读取这些文件并验证有效性,接着会找到代码...