2010-05-17 7 views
1

(아이폰) : (? 나는 비 원자는 무엇 확실하지 않다, 그것은 내가 정말 필요합니까, 여러 스레드에 안전하게 만드는 함께 할 수있는 뭔가입니다)이 코드가 누출되는 이유는 무엇입니까? 이 헤더입니다

@interface ForumBrowserAppDelegate : NSObject <UIApplicationDelegate> { 
ForumSelection *forumSelection; 
UIWindow *window; 
} 

@property (nonatomic, retain) IBOutlet UIWindow *window; 
@property (nonatomic, retain) IBOutlet ForumSelection *forumSelection; 

주 파일에서

:

- (void)applicationDidFinishLaunching:(UIApplication *)application {  
    // Override point for customization after app launch 

    [window addSubview:forumSelection.view]; //<<<< Instruments highlights this line 
    [forumSelection release]; 
    [window makeKeyAndVisible]; 
} 

원래 나는 [forumSelection release]; 그래서 나는 그것이 누수 이유가 될 줄 알았는데 헤더의 속성 일을하거나하지 않았다 그러나 인스트루먼트는 여전히 누수를 말한다 나는 아무 생각도 이유가 없다 ?

답변

0

당신이하고있는 곳에서 그것을 놓아서는 안되며, 그 대신 릴리스를 dealloc으로 옮깁니다. 릴리스 할 "당신"이 아닌 - XIB에서 언팩되었습니다. 누출에 대해서는 설명하지 않습니다.

forumSelection에서 누수가 확실하지 않습니까?

+0

계급 모드에서 악기를 사용하고 있습니까 (하단 선택기에 두 번째 옵션). 첫 번째 코드가 아닌 코드가 참조되는 마지막 위치를 찾기 위해 최선을 다하고 있습니까? (내 메모리가 나를 지원한다면 오류를 클릭 한 다음 Alt 오른쪽 화살표를 클릭하십시오.) – Andiih

+0

그렇지 않으면 계기가 있다는 것을 명심해야합니다. 그것을 사용하여 실수를 찾으십시오. 코드에 오류가 없으면 아마 괜찮을 것입니다. 정적 분석을 시도해 보셨습니까 (빌드 및 분석 하시겠습니까?). – Andiih

관련 문제