夜来幽梦忽还乡 亲满堂 饭已香

2017-08-25  本文已影响0人  李汪汪汪侠

今天在群里和别人唠起来实时搜索的问题,然后想到了handler的内存泄漏,搞一哈。

为什么内存泄露

解决办法

private static class MyHandler extends Handler {  
        private final WeakReference<HandlerActivity2> mActivity;  
  
        public MyHandler(HandlerActivity2 activity) {  
            mActivity = new WeakReference<HandlerActivity2>(activity);  
        }  
  
        @Override  
        public void handleMessage(Message msg) {  
            System.out.println(msg);  
            if (mActivity.get() == null) {  
                return;  
            }  
            mActivity.get().todo();  
        }  
    }  


@Override  
 public void onDestroy() {  
     mHandler.removeMessages(XXX);  //等等发送的消息
     mHandler.removeCallbacks(mRunnable);  
  
     //或者
     mHandler.removeCallbacksAndMessages(null); 
 }    

Over 回头望去,嗯......不曾回头

哈哈哈,小美的笑容我来守护
上一篇 下一篇

猜你喜欢

热点阅读