欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

AsyncTask 原理解析

程序员文章站 2022-04-25 16:10:42
...

AsyncTask简介

AsyncTask是android提供的轻量级的异步类。继承AsyncTask实现异步操作,执行的结果给UI主线程。AsyncTask的执行方法有两种execute和executeOnExecutor。

AsyncTask<Object, String, String> task = new AsyncTask<Object, String, String>() {
            @Override
            protected String doInBackground(Object... object) {
                return "";
            }
            
            @Override
            protected void onPostExecute(String s) {
            }

            @Override
            protected void onPreExecute() {
                super.onPreExecute();
            }

            @Override
            protected void onProgressUpdate(String... values) {
                super.onProgressUpdate(values);
            }

            @Override
            protected void onCancelled(String s) {
                super.onCancelled(s);
            }

            @Override
            protected void onCancelled() {
                super.onCancelled();
            }
        };
        //同步线程池,一次只开启一个线程
        task.execute();
       //异步线程池,一次执行多个
       // task.executeOnExecutor();

doInBackground(Object… object):执行任务中的耗时操作,返回线程任务执行的结果
onPreExecute(String s):接收线程任务执行结果、将执行结果显示到UI组件
onPreExecute():接收线程任务执行结果、将执行结果显示到UI组件
onProgressUpdate(String… values):主线程 显示线程任务执行的进度
onCancelled(String s):将异步任务设置为:取消状态
onCancelled():将异步任务设置为:取消状态

相关标签: AsyncTask