gpt4 book ai didi

iphone - 试图弄清楚这是否是内存泄漏 : Xcode

转载 作者:行者123 更新时间:2023-11-28 19:22:21 25 4
gpt4 key购买 nike

我有以下方法,想知道如果我运行它一百次是否会发生内存泄漏。

-(void)displayPointsOnBoard:(int)wordPoints atCoor:(NSNumber*)coor{

NSLog(@"%i", wordPoints);

CGPoint p = [[points objectForKey:[coor stringValue]] CGPointValue];
UIImageView* pointDisplay = [[UIImageView alloc] initWithFrame:CGRectMake((p.x - 15), (p.y - 35), 76.f, 40.f)];
pointDisplay.backgroundColor = [UIColor clearColor];
pointDisplay.image = [UIImage imageNamed:@"point_display_box.png"];
[self addSubview:pointDisplay];

[UIView beginAnimations:@"" context:NULL]; // Begin animation
[UIView setAnimationDuration:.4];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
pointDisplay.frame = CGRectOffset(pointDisplay.frame, 0.f, -35.f);
[UIView commitAnimations]; // End animations

[UIView beginAnimations:@"" context:NULL]; // Begin animation
[UIView setAnimationDuration:.3];
[UIView setAnimationDelay:.3];
pointDisplay.alpha = 0;
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationDidStopSelector:@selector(removeDisplay:)];
[UIView commitAnimations]; // End animations

[pointDisplay release];
}

我发布了 pointDisplay,但我仍然看到它(即使它的 alpha 为 0.0)。我想知道这是否会导致问题。任何帮助都是极好的!谢谢!

最佳答案

这不会导致内存泄漏,内存管理看起来没问题...如果您调用它 100 次,您的内存会不断增加,但这不会被视为泄漏,因为如果您释放 View ,您另外,UIImageViews 也将被释放......当你分配一些对象或数据然后无法释放时会发生内存泄漏......例如

-(void)blah
{
NSString *s=[[NSString alloc] init];

}

上面会导致内存泄漏,因为该方法创建了一个引用计数为 +1 的字符串,当该方法退出时,您不再有对该字符串的引用,因此您将无法释放它,系统也不会回收为字符串分配的内存。在您的示例中,您添加的 UIView 保留了 UIImageView,但是当您释放 UIView 时,它上面的所有 UIImageView 也将被释放。

希望对你有帮助

关于iphone - 试图弄清楚这是否是内存泄漏 : Xcode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7663014/

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