主线程无法完成时间较长的繁琐的任务,通常会交给子线程来处理。比如网络请求,如果在主线进行操作,必然会导致主线程异常,这是就可以采用handler来处理异步线程的请求。
今天是如何开启Handler的子线程,具体代码如下:
package com.example.demode1;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Looper;
import android.os.Message;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.println("activity "+Thread.currentThread().getId()+" "+Thread.currentThread().getName());
HandlerThread handlerThread = new HandlerThread("target_threat");
//在调用handlerThread.getLooper()之前必须调用start()方法
handlerThread.start();
MyHa