iOS内存优化,Analyze的使用

在使用xcode自带的检测内存的方式Analyze的时候,发现一个有问题的地方,如下:

//获取唯一Id

+ (NSString *)uuidString {

CFUUIDRef theUniqueString = CFUUIDCreate(NULL);

CFStringRef string = CFUUIDCreateString(NULL, theUniqueString);

CFRelease(theUniqueString);

return(__bridgeNSString *)string;

}

提示 : potential leak of object store into "string"

提示说 string 有可能内存泄漏了,说明我们在处理 string 的时候,也需要对他进行 release,而方法要返回NSString对象,所有可以把 string转换成 NSString对象,然后 retain 返回,返回之前release掉 string ,改过后的代码如下:

//获取唯一Id

+ (NSString*)uuidString {

CFUUIDReftheUniqueString =CFUUIDCreate(NULL);

CFStringRefstring =CFUUIDCreateString(NULL, theUniqueString);

NSString*tmpString = (__bridgeNSString*)string;

CFRelease(theUniqueString);

CFRelease(string);

returntmpString;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容