gpt4 book ai didi

iphone - 使用 pushViewController 进行内存管理

转载 作者:技术小花猫 更新时间:2023-10-29 10:17:43 25 4
gpt4 key购买 nike

我在内存管理技术方面仍然不是很好,并且想知道是否有人可以向我解释这种奇怪的行为。考虑我一直在测试的这 3 段代码:

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
NSLog(@"dof retain count = %d", [dofView retainCount]);

此记录:保留计数 = 1。这没问题。

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[dofView release];
NSLog(@"dof retain count = %d", [dofView retainCount]);

此记录:保留计数 = 1。它不应该是 0 吗??

DofView* dofView = [[DofView alloc] initWithNibName:@"DofView" bundle:nil];
[self.navigationController pushViewController:dofView animated:YES];
NSLog(@"dof retian count = %d", [dofView retainCount]);

此日志:保留计数 = 5。我不知道为什么是五个?

任何人都可以阐明这一点吗?我担心每次创建新 View 时都会占用内存。

谢谢!

最佳答案

不要依赖retainCount 进行内存分析。浏览关于 Memory Management 的引用文件了解更多信息

关于iphone - 使用 pushViewController 进行内存管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5949266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com