IOS各种属性修饰符

nonatomic:访问速度快,但是线程间属性或者变量的调度是不安全的!比如:在一个线程里面调用了其get方法,另外一个线程同时在调用其set方法!会出现无法预料的结果;解决方法(添加线程锁)!

atomic:访问速度慢,因为要保证操作整体完成,会保证 别的线程来访问这个属性之前,先执行完当前流程;

copy:字符串,或者block的声明使用copy

strong:strong和retain相似,只要有一个strong指针指向对象,该对象就不会被销毁;强引用!

assign:一般数据类型使用,比如:int Float NSInteger

weak:weak指针指向的对象一旦被释放,weak的指针都将被赋值为nil ;一般用于xib手托的控件

__weak:对于对象的声明,如果要使用弱引用,可以使用__weak,如:__weak typeof(self) _self=self;就可以直接使用_self了。

__strong:对于变量的声明,如果要使用强引用,可以使用strong,默认就是strong,写不写都是一样的。

时间关系就写到这吧,有要补充的可以留言!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 多线程、特别是NSOperation 和 GCD 的内部原理。运行时机制的原理和运用场景。SDWebImage的原...
    LZM轮回阅读 2,039评论 0 12
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 2,013评论 0 7
  • 史上最全的iOS面试题及答案 iOS面试小贴士———————————————回答好下面的足够了----------...
    Style_伟阅读 2,430评论 0 35
  • 文/柠檬成汁 冬夜,寂静的只有唏嘘的北风在撩动窗帘。 冬夜,空旷的只有皎洁的月光在洒下思念。 打开一盏守候的灯,冬...
    柠檬成汁阅读 335评论 0 3
  • 描述 当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死。本题就请...
    tingshuo123阅读 192评论 0 0