我使用Allocations描述了我的一个应用程序,并发现每当我调用特定方法时,我的“Live Bytes”数量增加300 KB。我不知道是什么原因引起的。
以下代码行是罪魁祸首:
CNTile *newTile = [self getTileAtPosition:3];
相关方法如下所示:
- (CNTile *)getTileAtPosition:(int)pos
{
CNTile *tileToReturn;
for (int x = 0; x < [row count]; x++)
{
for (int y = 0; y < [col count]; y++)
{
The code here generates four CGPoints and a CGMutablePathRef,
then uses CGPathContainsPoint to determine which CNTile to return.
}
}
return tileToReturn;
}
我应该提一下,我的CNTile
类只包含UIView
和UIImageView
,以及一些简单的变量(例如int
和{{1} } S)。
非常感谢任何帮助!
答案 0 :(得分:1)
如何创建CGMutablePathRef
?使用CGPathCreateMutable
?如果是,请确保使用CGPathRelease
将其释放:
CGMutablePathRef thePath = CGPathCreateMutable();
...
CGPathRelease(thePath);