2011-04-07 51 views
2

这里内存泄漏是在那里我有内存泄漏的代码:与下面的代码

SCNetworkReachabilityRef reach = SCNetworkReachabilityCreateWithName(kCFAllocatorSy stemDefault, "google.com"); 

SCNetworkConnectionFlags flags; 
SCNetworkReachabilityGetFlags(reach, &flags); 

[flags release]; 
[reach release]; 

那些发布不这样做。

回答

13

首先,SCNetworkConnectionFlagsenum,所以它不必被释放。删除[flags release]并解决问题。

移动时,SCNetworkReachabilityRef通过

CFRelease(reach); 
+0

这个答案应该是正确的发布:如果您使用基于基金会的内存分配,这将是有意义的使用基于基金会释放。 – 2011-04-07 04:23:12

+0

是的,如果你没有调用'[... alloc]'或'[... new ...]',那么记住它是一个很好的方法,那么你不应该调用'[...释放]'。 – 2011-04-07 04:26:52