- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我继承了一个不使用 ARC 的旧 Objective C 项目,并且由于第三方库的使用,可以使用 ARC。
我正在尝试解决由于访问未/释放内存而导致的一些随机崩溃。
我的首要任务之一是运行 Xcode 的“分析”工具,看看它发现了什么问题。在大多数情况下,解决这些问题非常有用,而且大多是常识。
但是,我有一些类(class)(即自定义 UITableViewCell
s)引起了我的一些担忧,我不知道如何解决这些问题
实际类(class)
#import "userListView.h"
@implementation userListView
@synthesize userCustomCelltextlabel,userCustomDetailtextlabel;
@synthesize unreadIdentifierImg;
-(void)dealloc {
[userCustomCelltextlabel release];
[userCustomDetailtextlabel release];
[unreadIdentifierImg release];
[super dealloc];
}
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
self.unreadIdentifierImg=[[UIImageView alloc]initWithFrame:CGRectMake(165,1,12,38)];
self.userCustomCelltextlabel=[[UILabel alloc]initWithFrame:CGRectMake(12,5,150,20)];
self.userCustomCelltextlabel.font=[UIFont fontWithName:@"TrebuchetMS-Bold" size:13.0f];
self.userCustomCelltextlabel.backgroundColor=[UIColor clearColor];
self.userCustomDetailtextlabel=[[UILabel alloc]initWithFrame:CGRectMake(12,22,150,15)];
self.userCustomDetailtextlabel.backgroundColor=[UIColor clearColor];
self.userCustomDetailtextlabel.textColor=[UIColor grayColor];
self.userCustomDetailtextlabel.font=[UIFont fontWithName:@"Trebuchet MS" size:12.0];
self.userCustomDetailtextlabel.numberOfLines=1;
self.userCustomDetailtextlabel.lineBreakMode=NSLineBreakByTruncatingTail;
//self.unreadIdentifierImg.image=[UIImage imageNamed:@"MessageEntrySendButton.png"];
//self.unreadIdentifierImg.hidden=YES;
[self.contentView addSubview:self.unreadIdentifierImg];
[self.contentView addSubview:self.userCustomDetailtextlabel];
[self.contentView addSubview:self.userCustomCelltextlabel];
}
return self;
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
#import <UIKit/UIKit.h>
@interface userListView : UITableViewCell
@property (retain, nonatomic) UILabel *userCustomCelltextlabel;
@property (retain, nonatomic) UILabel *userCustomDetailtextlabel;
@property (retain, nonatomic) UIImageView *unreadIdentifierImg;
@end
// 2. Method returns an instance of UIImageView with a +1 retain count
self.unreadIdentifierImg=[[UIImageView alloc]initWithFrame:CGRectMake(165,1,12,38)];
// Seems to point to UIImageView init
// 3. Object leaked: allocated object is not referenced later in this execution path and has a retain count of +1
self.userCustomCelltextlabel=[[UILabel alloc]initWithFrame:CGRectMake(12,5,150,20)];
// Which seems to point to the UILabel init
userCustomDetailtextlabel
.我在这里遇到的问题是
allocated object is not referenced later in this execution path
,这是不正确的,因为它已添加到
contentView
.
最佳答案
属性是用保留声明的,因此编译器将生成一个保留值的 setter 方法。
您使用 alloc/init 创建标签,这会为您提供保留计数为 +1 的标签,然后使用 self.userCustomCelltextlabel
将其分配给您的属性这会调用相应的 setter 方法,该方法正在向标签发送保留,现在它的保留计数为 +2。
在 dealloc 中,您发送 release 并且标签的保留计数为 +1 并且正在泄漏。
添加 autorelease
到您的 alloc/init 或直接使用 _userCustomCelltextlabel
将其分配给 ivar .
关于ios - Xcode "Analyze"消息混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47408146/
我想利用 Postgres 中仅索引扫描的强大功能,并用一张表进行了试验: CREATE TABLE dest.contexts ( id integer NOT NULL, phrase_i
我是Elasticsearch的新手,并且愿意用于全文搜索引擎。 对于文本分析,我需要使用(多语言)语言分析器。 Elasticsearch提供了内置的语言分析器,但我不确定它们是否涵盖了预处理步骤,
这是我在elasticSearch上的 Realm : "keywordName": { "type": "text", "analyzer": "custom_sto
在之前使用 Mysql 数据库的项目中,当大量数据被添加到表中时,我不得不使用 ANALYZE tablename,以便数据库为 SQL 创建合理的查询计划。 现在我将 H2 与 Hibernate
在最新的 alpha (alpha08) 中,我似乎无法弄清楚如何正确配置所有内容,以便我的 Analyzer正常运行。我可以看到它工作一次,然后它就再也不会运行了。 由于种种原因我需要使用 Text
我想匹配函数的特定参数可以为空的所有方式。现在我正在使用 hasArgument( 3, anyOf( cxxNullPtrLiteralExp
下面的代码可以按预期工作,并且当文本中存在Internet时,它将被匹配。 (.*)(Internet)(.*)
我正在使用新的.csproj文件格式来打包NuGet包,而不使用.nuspec文件。 问题是,它会将我的dll放在\lib\中,我需要将其放在\analyzers\ 我是谁完成的? 最佳答案 控制构建
在我的 Android 项目(Android 4.2 Canary 15)中,完成不再起作用(文本着色也是如此)。这仅发生在一个 Android 项目中(其他项目运行良好)。 No completio
使用雪球分析仪,当我查询“房屋”时会得到“房屋”的结果。我需要分析器进行大多数搜索,但是在这种情况下,返回值是无关紧要的。我将如何限制分析仪应对这些情况的工作? 最佳答案 您可以通过keyword_m
我正在使用带有自定义索引和搜索分析器的ElasticSearch。 我正在查询用户数据,有时在字符串中也有相同的情况。 示例:“Hello World,您好,先生!”在这里您可以看到2次“Hello”
我们在 flex 搜索索引中有很多文档,目前正在进行全文搜索。我在项目中的下一个要求是在文档中查找所有信用卡数据。用户将来也可以动态定义一些正则表达式搜索规则。但是,使用标准分析器无法搜索信用卡信息或
有人可以告诉我 mvn dependency:analyze 是如何工作的吗?我的一个项目中的 mvn dependency:analyze 输出显示 [WARNING] Used undeclare
我继承了一个不使用 ARC 的旧 Objective C 项目,并且由于第三方库的使用,可以使用 ARC。 我正在尝试解决由于访问未/释放内存而导致的一些随机崩溃。 我的首要任务之一是运行 Xcode
我正在使用 maven-2 构建一个 java 项目,由于在 pom.xml 文件中列出了一些依赖项,而其他项未列出,并且在 dependency:analyze-only mojo 配置中,fail
处理依赖关系是否仍然是一种好的做法 mvn dependency:analyze 不显示任何警告? 当代码显式使用未声明的依赖项时,或者代码未使用已声明的依赖项时,它会提示 对于后一种情况,我可以想到
我们有一些准则,我们希望如何使用我们的 namespace ,并且对它们也有访问限制。因为有时开发人员会做错,所以我们需要分析这些规则。目前我们正在用 nDepend 做这件事,效果很好。但是,有人必
我有一个 Roslyn 分析器,最近更新为使用 CSharp.Workspaces 2.3 版。我发现在构建时会收到如下警告: Analyzer attempted to register an 'a
我需要在执行VACUUM ANALYZE 后释放存储空间。我知道有 VACUUM FULL 但问题是,它锁定了可能导致问题的表(如果有正在进行的事务)。 有没有其他方法可以释放空间给操作系统? 感谢您
我通过解释分析得到以下输出: Nested Loop Anti Join (cost=0.00..36.92 rows=83 width=3) (actual time=0.303..1 0.631
我是一名优秀的程序员,十分优秀!