- 博客(5)
- 收藏
- 关注
原创 【Android】线程池
在Android中,主线程不能执行耗时的操作,否则可能会导致ANR。那么,耗时操作应该在其它线程中执行。线程的创建和销毁都会有性能开销,创建过多的线程也会由于互相抢占系统资源而导致阻塞的现象。这个时候,就需要使用线程池。 线程池的优点可以概括为以下几点: 1、重用线程池中的线程,避免线程创建、销毁带来的性能开销; 2、能有效地控制线程池的最大并发数,避免大量的线程之间因互相抢占系统资源导致...
2019-04-19 13:36:13 82
原创 【Android】IntentService原理分析
IntentService是一个异步处理请求的服务,通过Context#startService(Intent)可以将请求发送给IntentService,IntentService在工作线程中依次串行处理每一个Intent,当处理完所有请求后,IntentService会自动停止。 在IntentService内部是通过HandlerThread来切换线程和处理消息的。 当IntentServi...
2019-04-03 16:11:43 131
原创 【Android】HandlerThread原理分析
HandlerThread是一个内部拥有Handler和Looper的特殊Thread,可以方便地在子线程中处理消息。 简单使用 HandlerThread的使用比较简单。 mHandlerThread = new HandlerThread(THREAD_NAME); mHandlerThread.start(); 首先,实例化一个HandlerThread,然后调用start()方法。在st...
2019-04-03 16:11:06 293
原创 【Android】AsyncTask机制
AsyncTask可以让我们更容易地使用UI线程。它允许执行后台操作,并把结果发布到UI线程上,而不需要操作线程或Handler。AsyncTask被设计成一个和Thread、Handler相关的一个帮助类。AsyncTask用于短时(最多是几秒)的操作。 AsyncTask使用需要注意以下几点: AsyncTask类必须在UI线程上加载。AsyncTask必须在UI线程实例化。execut...
2019-04-02 16:58:09 435
原创 【Android】Handler消息机制
Handler消息机制主要涉及Looper、Handler、MessageQueue、Message。其中,Looper主要负责获取消息,Handler负责发送消息及处理消息,MessageQueue是消息队列,Message是消息类。 Looper循环获取消息 1、ActivityThread的main()方法: public static void main(String[] args) ...
2019-04-02 10:18:41 56
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人