nonatomic专题

atomic 和 nonatomic 有什么区别?

文章转载自:http://www.jianshu.com/p/7288eacbb1a2 问题 在定义 property 的时候,atomic 和 nonatomic 有何区别? @property (nonatomic, retain) UITextField *userName;@property (atomic, retain) UITextField *userName

@property atomic与nonatomic readonly

@property与@synthesize是成对出现的,可以自动生成某个类成员变量的存取方法。在xcode4.5以及以后的版本,@synthesize可以省略。 1.atomic与nonatomic atomic :默认是有该属性的,这个属性是为了保证程序在多线程情况,编译器会自动生成一些互斥加锁代码,避免该变量的读写不同步问题。 nonatomic :如果该对象无需考虑多线程的情况

Objective-C:nonatomic关键字(修饰变量,可以提高访问速率)

为了防止同一变量被不同的线程在某一时间段同时访问,必须加原子琐来保证某次操作的正确性。关于操作的原子性,我看过大神guancheng的一篇http://www.parallellabs.com/2011/04/09/pthread-mutex-lock-and-thread-safety/,这篇文简单的介绍下原子操作。        给线程加锁的消耗是比较大的,而我们在IOS中不是经常会多个

nonatomic retain copy assign区别

1. 假设你用malloc分配了一块内存,并且把它的地址赋值给了指针a,后来你希望指针b也共享这块内存,于是你又把a赋值给(assign)了b。此时a和b指向同一块内存,请问当a不再需要这块内存,能否直接释放它?答案是否定的,因为a并不知道b是否还在使用这块内存,如果a释放了,那么b在使用这块内存的时候会引起程序crash掉。  2. 了解到1中assign的问题,那么如何解决?最简单的一个