安卓中实现异步任务一——直接new Thread
问题背景
上篇文章大致介绍了几种安卓汇总实现异步任务的方法,讲得比较简要,有朋友问到具体的实现方式,现在开始分列几篇文章详细介绍这几种异步的具体实现。持续更新。
实现demo
现在介绍第一种方式,这个是比较常见的,和java中是一样的。 具体代码如下:
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
public class ThreadActivity extends AppCompatActivity {
    private static final String TAG = "ThreadActivity";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_thread1);
        Log.d(TAG, "TAG onCreate " + Thread.currentThread().getId() + " "
                + Thread.currentThread().getName());
        runInNewThread();
    }
    private void runInNewThread() {
        new Thread() {
            @Override
            public void run() {
                try {
                    // 模拟执行耗时任务
                    Thread.sleep(3000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                Log.d(TAG, "runInNewThread" + Thread.currentThread().getId() + " " + Thread.currentThread().getName());
            }
        }.start();
    }
}
日志如下:
可以看到主线程(UI线程)和子线程的相关信息。










