gpt4 book ai didi

iOS 内存泄漏建议

转载 作者:行者123 更新时间:2023-11-28 18:14:14 24 4
gpt4 key购买 nike

我很确定这是导致泄漏的原因,我需要一些建议。这是基于我正在做的事情的代码:

NSMutableArray* straVideoTitles;

- (void) parseData{
//stuff
straVideoTitles = [self getVideoTitle:strData]; //strData contains unparsed data
//more stuff
}

- (NSMutableArray*) getVideoTitles:(NSString*)strData{
NSMutableArray *array;
array = [[NSMutableArray alloc] init];
//Parse data and populate array
return array;
}

基于我正在为 NSMutableArray 分配空间而不是释放它的事实,这是一个泄漏,对吧?我该如何解决这个问题?我是否应该放弃返回值并在 getVideoTitles 中分配 straVideoTitles 然后像这样释放:

- (void) getVideoTitles:(NSString*)strData{
NSMutableArray *array;
array = [[NSMutableArray alloc] init];
//Parse data and populate array
straVideoTitles = array;
[array release];
}

还是我做错了?或者一切都很好,因为我在 dalloc 中发布了 straVideoTitles?

最佳答案

你可以改变

return array;

进入

return [array autorelease];

或者您可以使用 ARC 而不再关心它。

编辑:第二种方法是可能的,不包括内存泄漏,但代码封装较少,因此可重用性和 future 证明较少。

关于iOS 内存泄漏建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8126496/

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