首先,上面五个并不是在一个层面上的,可以分为两部分,第一部分是assign、retain、copy,第二部分是weak、strong。assign声明的属性是不会增加引用计数的,也就是说声明的属性释放后,就没有了,即使其他对象用到了它,也无法留住它,只会crash。与assign相对,我们要解决对象被其他对象引用后释放造成的问题,就要用retain来声明。最常见到copy声明的应该是NSString。copy工作由copy方法执行,此属性只对那些实现了NSCopying协议的对象类型有效 。对应的有atomic,是原子性的访问。我们知道,在使用多线程时为了避免在写操作时同时进行写导致问题,经常会对要写的对象进行加锁,也就是同一时刻只允许一个线程去操作它。
IOS中(assign,retain,copy,weak,strong)的区别以及nonatomic的含义
用户评论
推荐下载
-
IOS中assignretaincopyweakstrong的区别以及nonatomic的含义
主要介绍了我们在声明@property 属性时,总是要在括号中写上assign、retain、copy、weak、strong中的一个,他们的区别,需要的朋友可以参考下
7 2020-09-01 -
retain和copy还有assign的区别
retain和copy还有assign的区别
27 2019-01-06 -
iOS开发之详谈属性设置readwrite readonly retain copy assign nonatomic
主要介绍了iOS开发之详谈属性设置readwrite、readonly、retain、copy、assign、nonatomic的相关资料,需要的朋友可以参考下
15 2020-09-03 -
Verilog中reg和wire用法和区别以及always和assign的区别.pdf
非常好用的总结,Verilog中-reg和wire-用法和区别以及always和assign的区别
14 2020-08-07 -
Python技巧copy模块中copy与deepcopy函数的区别
Python 中赋值语句不复制对象,而是在目标和对象之间创建绑定关系。对于自身可变或者包含可变项的集合对象,开发者有时会需要生成其副本用于改变操作,进而避免改变原对象。copy 模块提供了通用的浅层复
22 2020-12-31 -
iOS中weak的实现代码示例
本篇文章主要介绍了iOS 中weak的实现代码示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
14 2020-12-23 -
javascriptvoid0含义以及与# 的区别讲解
[removed]void(0) 中最关键的是 void 关键字, void 是 JavaScript 中非常重要的关键字,该操作符指定要计算一个表达式但是无返回值。 说明: 1.javascript
10 2020-12-02 -
加粗b与strong的区别分析
我们各位站长都知道在做网站优化的时候,文章的关键字加粗对优化是有极大的好处的。 但细心就会发现strong和b同样都是起加粗作用。像wordpress程序在加粗的时候系统默认会使用strong标签
7 2020-12-22 -
int在python中的含义以及用法
在本篇文章中小编给大家整理了关于int在python中的含义以及用法,对此有兴趣的朋友们可以跟着学习下。
17 2020-12-22 -
微软windows系统中版本的含义和区别
关注系统的朋友会发现,微软windows 正式版本的系统往往带有不同的“名号”,主要分为MSDN版,RTM版,OEN版,在过去的XP系统中还有VOL版本,经常听这几个名词,却不知道各代表什么意思,更不
24 2020-08-10
暂无评论