其他分享
首页 > 其他分享> > AsyncTask

AsyncTask

作者:互联网


①对handler的封装 
②使用了线程池 串行线程池 execute方法 
并行线程池 executeOnExecutor 并行 系统自带的线程池都是全局的 注意页面退出时要及时取消当前页面没有完成的任务 
③ onPreExecute onPostExecute doInbackground 让代码可读性更好

HandlerThread   带有Looper和消息队列的子线程

 HandlerThread thread = new HandlerThread("worker");//创建一个HandlerThread对象

        thread.start(); //让run方法运行起来

        Handler handler = new Handler(thread.getLooper());//创建子线程Handler

        handler.post(new Runnable() {//发消息就是发送到子线程里了

            @Override

            public void run() {

 

            }

        });

        thread.quit();//退出线程

 

IntentService 
创建一个可以在子线程执行耗时操作的服务 执行完任务之后 这个服务就会自动关闭

public class MyIntentService2 extends IntentService {

    public MyIntentService2() {

        super("MyIntentService2");

    }


    @Override

    protected void onHandleIntent(Intent intent) {

        //这个方法会执行在子线程中 执行之后这个服务会关闭

        if (intent != null) {

        }

    }

 

 

标签:thread,HandlerThread,AsyncTask,handler,线程,Handler,new
来源: https://www.cnblogs.com/nangongyibin/p/10425308.html