iOS程序退出的时候不执行dealloc函数的疑惑

今天有人问为什么程序退出的时候没有执行appDelegate的dealloc函数,我测试了下是真的没有执行,疑惑了很久,后来在网上找到一位大牛的解释,分享给有同样疑惑的童鞋参考下。

 

“Regardless of how a process terminates, the same code in the kernel is eventually executed. This kernel code closes all the open descriptors for the process, releases the memory that it was using, and the like.”

如果是程序在调用exit系统调用退出的话整个process所占用的内存空间(heap, stack, and static等等)和此进程占用的文件句柄都交付给内核处理了,由内核来一并清理掉,所以这个时候就没需要单独来对每个对象来dealloc了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值