2011-12-19 3 views
1

Instrument에서 메모리 누출을 확인하기 위해 iOS 어플리케이션을 분석하고 있습니다. 할당 및/또는 누출을 확인하도록 선택했습니다.알 수없는 메모리 누출

응용 프로그램이 실행되면 All Allocations가 최대 1.3MB까지 증가합니다. 버튼을 클릭하고 선택 도구를 표시 한 다음 항목을 선택하고 선택 도구를 제거하면 All Allocations가 커집니다. 나는 빨간 막대가 없기 때문에 분명한 메모리 누수가 없는지 확인했다.

실마리가 있습니까? 알 수없는 많은 Malloc 16 바이트가 있다는 것을 알았습니다 ... Malloc 32 Bytes, ... 그러나 추적 할 수있는 유용한 정보는 없습니다.

다른 방법으로 문제를 해결할 수 있습니까?

+0

총 저장 당신은,하지만, 문제가있는 등, 이미지 캐시,,, 시간이 지남에 따라 증가 할 것이다 같은 행동. –

+0

나는 ViewController의 활동을 최소화하기 위해 몇 가지 코드를 언급했다. 이제 버튼을 눌러 UIPickerView를 할당하고 self.view에 추가합니다. 동일한 버튼을 누르면 UIPickerView가 self.view에서 제거되어 해제됩니다. 나는 계속 힙샷을 가져 간다. 나는 아직도 힙 성장 (때로는 4xx 바이트, 2K 바이트 ...) – SkyEagle888

답변

1

사용 Heapshot 볼, 메모리 creap를 찾을 수 있습니다 :

bbum blog는 기본적으로 방법은 악기 도구를 할당 운영하는 heapshot을, 코드의 직관과 3 ~ 4 회 반복 다른 heapshot을 실행할 수있다. 이것은 반복되는 동안 할당되지 않은 메모리를 나타냅니다.

결과를 알아 내려면 개별 할당을 확인하십시오.

은 유지 곳, 자료 및 autoreleases 객체 사용 악기 발생을 참조해야하는 경우에에 "레코드 참조 카운트를"로 설정 할당에, 악기의

실행 (당신은 옵션을 설정 녹화를 중지해야). 선택기를 실행하고, 녹음을 중지하고, ivar (datePickerView)를 검색하고, 드릴 다운하여 모든 항목이 보존, 릴리스 및 자동 삭제가 발생한 곳을 볼 수 있습니다. 당신이 "정상 상태"에 도달 할 때까지 뷰가 생성으로 저장을 사용하면 반복 할 때마다 계속 증가하는 경우

enter image description here