Android項目開發常用工具類LightTaskUtils源碼介紹
- 版權聲明 本文原創作者:谷哥的小弟
- 作者博客地址:http://blog.csdn.net/lfdfhl
LightTaskUtils概述
LightTaskUtils是一個輕量級的線程管理工具。
LightTaskUtils截圖
LightTaskUtils截圖如下:
LightTaskUtils源碼
LightTaskUtils源碼如下:
import android.os.HandlerThread; import android.os.Handler; /** * 輕量級的線程管理工具類 * * 本文作者:谷哥的小弟 * 博客地址:http://blog.csdn.net/lfdfhl */ public class LightTaskUtils { private Handler mHandler; private HandlerThread mHandlerThread; public LightTaskUtils() { mHandlerThread = new HandlerThread("LightTaskThread"); mHandlerThread.start(); mHandler = new Handler(mHandlerThread.getLooper()); } /** * 普通操作,線程優先級比UI線程底,用於無UI交互操作 */ public void post(Runnable runnable) { if (mHandler != null) { mHandler.post(runnable); } } /** * 線程優先級和UI線程一樣,用於UI交互操作 */ public void postAtFrontOfQueue(Runnable runnable) { if (mHandler != null) { mHandler.postAtFrontOfQueue(runnable); } } public void postDelayed(Runnable runnable, long delay) { if (mHandler != null) { mHandler.postDelayed(runnable, delay); } } public void postAtTime(Runnable runnable, long time) { if (mHandler != null) { mHandler.postAtTime(runnable, time); } } /** * 清空Handler消息棧和子線程的Loop,避免內存泄漏 */ public void removePost() { if (mHandlerThread != null) { mHandlerThread.quit(); mHandlerThread = null; } if (mHandler != null) { mHandler.removeCallbacksAndMessages(null); mHandler = null; } } }
到此這篇關於Android項目開發常用工具類LightTaskUtils的文章就介紹到這瞭,更多相關android開發工具類LightTaskUtils內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Android Handler使用案例詳解
- Android實現一個完美的倒計時功能
- Android消息機制Handler用法總結
- Android handle-message的發送與處理案例詳解
- Android消息機制Handler深入理解