0
点赞
收藏
分享

微信扫一扫

iOS MRC下对象 retainCount=0后 还可以使用一次

律楷粑粑 2023-05-22 阅读 8


http://www.cocoachina.com/bbs/read.php?tid-175523-page-1.html

iOS MRC 当retaincount = 1时,release后retainCount还是1,且还可以使用一次

你说的是正常的情况下的理解方式。runloop说法对于新人来说还是不是很直接。
另外realse之后再调用还能调用的的问题,我做了这么多年也是经常遇到,也曾经试图寻找原因,
就像6楼说的,很多时候都会出现realse过后还能调用的现象。而且对象不是autorealse的。
我还遇到过奇葩的是,每次要等上好几秒钟再调用才会出现空指针异常。(代码里绝对没有手动多线程)
还有很多时候跟你测试的硬件环境还有关,可以说,ios的内存管理策略虽然一如既往的是一套,但是每个版本都有细微的变化,
使用中还是能感觉出来,只是没有官方的说明,无法正确的解释。

不过随着一些界面业务该用autorelease之后,这种现象越来越不关注了。 

举报

相关推荐

0 条评论