A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

release方法主要用于reference counting。有个疑问的地方是:方法中先判断是否达到释放条件,如果没达到,然后 count 减一? 还是先将 count减一,然后判断是否达到释放条件呢?

评分

参与人数 1技术分 +1 收起 理由
脸皮猴 + 1

查看全部评分

3 个回复

倒序浏览
release方法就是直接减一,减一后看是否为野指针,不是的话问题不大,是的话就麻烦了
回复 使用道具 举报
release方法只是负责对某个实例对象的引用计数器减一,不会去关注这个计数器值是多少。所以,当一个实例对象已经被释放了,如果一个指针还指那个被释放的对象,调用了release方法一样会出现野指针错误。当引用计数器为0的时候,系统会自动释放对象,不要人为去操作!
回复 使用道具 举报
release 不会有什么智能的去判断能不能减1,只会调用到方法,就减1,减错了。。。就报错,所以自己使用的时候才要小心。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马