onDestroy方法被延時執行~事件
今天改bug的時候發現,一個介面第二次進去的時候,正在執行onDestroy方法,因為在onDestroy裡新增了自己寫的釋放資源方法,導致介面上的資料都被清空!目前原因還未確定,但是搜尋網路裡的帖子,總結以下的各家看法,方便自己修復這個問題:
1、頁面沒有設定theme:android:theme="@android:style/Theme.NoTitleBar" ,帖子說明:http://blog.sina.com.cn/s/blog_5da93c8f0101nrx5.html 不是很理解,有待驗證。另外一帖子:http://blog.sina.com.cn/s/blog_601cbd070100npf8.html#post
2、有一些延時的操作導致記憶體洩露的,參考帖子:http://www.myexception.cn/mobile/2067064.html 這個還是有一定的道理,可以仔細研究原來程式碼裡的缺陷~
初步得出的解決方案是:自己顯式地呼叫記憶體釋放介面而不是放在onDestroy裡讓系統呼叫,參考帖子:http://blog.csdn.net/qq774232122/article/details/52149643
相關文章
- 指定執行緒延遲時間(毫秒)執行緒
- 在子執行緒呼叫performSelector: withObject: afterDelay 延時方法無效執行緒performSelectorObject
- 同個執行緒裡,如果執行緒正在忙過程中,定時器時間到了會被延遲觸發嗎?執行緒定時器
- javascript指令碼何時被執行JavaScript指令碼
- 關於滑鼠hover事件及延時事件
- javascript指令碼何時會被執行JavaScript指令碼
- script的延遲執行
- setTimeout()和setInterval() 何時被呼叫執行
- 定時器setInterval,只執行一次/第一次延遲執行定時器
- linux下影響程式碼執行時序(時延大)的可能原因Linux
- ABCD四個順序執行方法,擴充性延申
- 一步步瞭解執行緒池之定時延遲執行-ScheduledThreadPool執行緒thread
- test是否被執行?
- unity延時方法Invoke和InvokeRepeatingUnity
- Java如何測量方法執行時間Java
- 利用延時備庫找回被誤刪的資料
- ScheduledThreadPoolExecutor原始碼分析-你知道定時執行緒池是如何實現延遲執行和週期執行的嗎?thread原始碼執行緒
- tweak 中常用的方法呼叫方法和 執行時APIAPI
- 微服務中的事件、流程和長時間執行業務微服務事件行業
- Java調優—Btrace監控Java執行緒/方法執行引數、執行時間(Windows)Java執行緒Windows
- Activity生命週期onDestroy
- oracle備庫延時的監控方法Oracle
- GCD延遲執行如何在中途取消GC
- sqlserver執行時記憶體設定方法SQLServer記憶體
- 同時多個SQL命令執行的方法SQL
- JavaScript進階系列05,事件的執行時機, 使用addEventListener為元素同時註冊多個事件,事件引數JavaScript事件dev
- 面試時說Redis是單執行緒的,被噴慘了!面試Redis執行緒
- MySQL並行複製延時時間不準確MySql並行
- ClassLoader.loadClass()方法執行時提示‘ClassNotFoundException’Exception
- linux下定時執行任務的方法--crontabLinux
- 在unix下定時執行oracle的sql方法(轉)OracleSQL
- [MSSQL]sql 儲存過程定時執行方法SQL儲存過程
- Python的執行時方法補丁技術Python
- Java專案計算程式執行時間方法Java
- 被遺棄的執行緒執行緒
- zookeeper之watch事件延遲事件
- 如何在JavaScript中實現某個方法執行超時後則繼續執行其它方法?JavaScript
- windows多執行緒同步--事件Windows執行緒事件