HandlerThread 类
时间: 2024-12-11 19:22:29 浏览: 57
HandlerThread 是Android系统中的一个线程工具类,它专门用于创建和管理独立于主线程(UI Thread)的工作线程。通常情况下,为了保证UI操作的流畅性和避免ANR(应用程序无响应)错误,我们应该尽量不在主线程中执行耗时任务,比如网络请求、数据库操作等。HandlerThread正好为此提供了一个解决方案。
当你创建一个 HandlerThread 对象时,你可以指定一个名字,然后通过 start() 方法启动该线程。在这个线程内部,你可以创建一个新的 Handler 实例,这个 Handler 就可以在它的Looper上发送消息。这意味着你可以使用 sendEmptyMessage(), sendMessageAtTime() 或者 post() 等方法来向这个 Handler 发送消息,而这些消息会在该线程的 Looper 上被处理。
以下是HandlerThread的一般用法示例:
```java
HandlerThread myThread = new HandlerThread("MyWorkerThread");
myThread.start();
// 在新线程中创建Handler
Handler handler = new Handler(myThread.getLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// 这里处理来自Handler的消息
}
};
// 在主线程中使用Handler执行工作
handler.post(new Runnable() {
@Override
public void run() {
// 执行耗时任务
}
});
```
阅读全文
相关推荐

















