如何在子线程中创建 Handler?

本文介绍了如何在子线程中创建Handler,强调了需要子线程包含Looper,并详细说明了创建过程:1.使用HandlerThread创建带有Looper的线程;2.通过HandlerThread获取Looper;3.使用Looper创建子线程的Handler。还提醒了如果要停止HandlerThread的正确操作。
摘要由CSDN通过智能技术生成

在子线程中创建 handler,要确保子线程有 Looper,UI 线程默认包含 Looper。我们需要用到一个特殊类HandlerThread。这个类可以轻松的创建子线程 handler

创建步骤:
1.创建一个 HandlerThread,即创建一个包含 Looper 的线程HandlerThread 的构造函数有两个

public HandlerThread(String name) {
    super(name);
    mPriority = Process.THREAD_PRIORITY_DEFAULT;
}

/**
* Constructs a HandlerThread.
* @param name
* @param priority The priority to run the thread at. The value supplied must be from
* {@link android.os.Process} and not from java.lang.Thread.
*/
public HandlerThread(String name, int priority) {
    super(name);
    mPriority = priority;
}

这里我们使用第一个就好:
 

HandlerThread handlerThread=new HandlerThread("xuan");
handlerThread.start();//创建 HandlerThread 后一定要记得 start();

2.通过 HandlerThread 的 getLooper 方法可以获取 Looper
 

Looper looper=handlerTh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值