首页 > 其他 > 详细

didReciveMemoryWaring和dealloc的内存管理优化

时间:2014-03-14 18:46:43      阅读:341      评论:0      收藏:0      [点我收藏+]

-(void)didReciveMemoryWaring

{



       [super didReceiveMemoryWaring];
 
       //self.isViewLoaded判断视图是否在内存中, self.view.window判断当前视图是否显示在window上面
 
       //当收到内存警告,如果当前视图已经加载至内存,并且没有显示在window上,释放其内部一些资源
 
       if(self.isViewLoaded && !self.view.window)
  {
 
              //所有需要在viewDidLoad加载的全局变量都要在此处释放
 
              //包括strong变量、字典、数组
 
             userNo = nil;
 
             userName = nil;
 
             //注意从上一界面传来的参数不需要在这里释放
  
            self.view = nil; //当再次进入此视图时,能重新调用viewDidLoad
 
            //如果需要记录界面交互信息,可以不将self.view设置为nil 
 
      }
 
}


 
-(void)dealloc
{
 
     //当界面pop出栈时,调用此方法
 
     //此处将一些界面销毁后仍然没有释放掉的变量释放掉
 
     //如定时器和通知的销毁
 
     //注意 此处不要调用[super dealloc];
 
}

didReciveMemoryWaring和dealloc的内存管理优化,布布扣,bubuko.com

didReciveMemoryWaring和dealloc的内存管理优化

原文:http://www.cnblogs.com/tanwen1989/p/3598892.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!