内存泄漏在iPhone应用程序中

时间:2011-01-05 03:33:35

标签: iphone xcode memory-leaks

我的应用程序完成最多。当我在模拟器上运行应用程序时,它工作正常,但是当我在设备上运行一段时间后,调试器显示消息为“程序接收信号0”。我测试了应用程序仪器的帮助泄漏它显示泄漏。但我无法确切地知道泄漏的位置.Am释放分配的每个物体。 例如,我提供的代码很少:

     if([UIImagePickerController    isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])
  {
    UIImagePickerController *picker=[[UIImagePickerController alloc] init];
    picker.delegate=self;
    picker.sourceType=UIImagePickerControllerSourceTypePhotoLibrary;        
   [self presentModalViewController:picker animated:YES];
   [picker release];
//  NSFileHandle *fileHandle = [[NSFileHandle alloc]initWithFileDescript
   }

在上面的代码中,泄漏显示在UIImagePickerController * picker = [[UIImagePickerController alloc] init];但我正在释放它。 有人可以向我提供有关泄漏的详细信息以及如何解决这些问题。提前谢谢。

1 个答案:

答案 0 :(得分:0)

在这行代码中:

[self presentModalViewController:picker animated:YES];

self (父控制器)实际上保留了您的选择器,并且在父控制器明确解除它之前不会释放它。只要您的父控制器在您的代码中的某个位置解雇此选择器,您就可以了。