`
liangoogle
  • 浏览: 278478 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

handler使用之———另外启动一个线程来出来下载等耗时动作

阅读更多

handler要实现在一个线程之中发送消息,使用looper类处理消息队列的功能,默认的是UI主线程的looper,现在我们重写了handler,我们在这里做一个可以传入looper的构造函数,这样我们就可以把handler绑定到别的线程里了,再用这个handler发消息的话,都是在另外一个我们绑定的线程上处理了。要用到一个handlerthread类。这个类是集成looper、handler、和thread三个的一个类。

 

 public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        init();

        HandlerThread hThread=new HandlerThread("h_Thread");

        hThread.start();

        myhandler myhandler=new myhandler(hThread.getLooper());

        Message msg=myhandler.obtainMessage();

        msg.sendToTarget();//把 Message发送到目标对象,目标对象就是生成msg的目标对象。

 

    }

class myhandler extends Handler{

    public myhandler(){}

    public myhandler(Looper looper){

        super(looper);

    }

    public void handleMessage(Message msg) {

        Log.e("这是新线程", "》》》》》》》》》》》》》》》》》新线程的测试");

    }

 

}

分享到:
评论

相关推荐

    android——多线程

    标题"android——多线程"和描述"android——Handler与多线程应用范例"暗示我们将深入探讨如何在Android中使用Handler来管理多线程。 Android系统默认运行在一个单线程环境中,即主线程,也被称为UI线程。主线程主要...

    Android Handler线程间的调度

    本文将深入探讨“Android Handler线程间的调度”这一主题,并结合提供的资源——MessageProject,来阐述相关知识点。 首先,Handler是Android中的一个关键类,它允许开发者在不同的线程之间发送和处理消息。Handler...

    安卓Android源码——安卓Android多线程断点续传下载+在线播放音乐.zip

    本资料包"安卓Android源码——安卓Android多线程断点续传下载+在线播放音乐.zip"提供了一个完整的示例,涵盖了多线程技术、断点续传下载以及音乐在线播放的关键知识点。现在,我们将详细探讨这些核心概念。 首先,...

    HandlerThread,AsyncTask,Handler的一个小例子

    本示例探讨了三种不同的方法——HandlerThread、AsyncTask以及Handler,它们都是用来在后台线程处理耗时操作并更新UI(主线程)的有效手段。下面我们将深入理解这三个概念及其在进度条更新中的应用。 首先,...

    Android Handler解析

    下面通过一个具体的例子来展示如何使用Handler在子线程中下载图片,并在主线程中更新UI显示这张图片。 ```java public class MainActivity extends AppCompatActivity { private static final String IMAGE_URL = ...

    Android耗时操作Demo

    我们以一个具体的实例——"Android耗时操作Demo"为例,讲解如何在子线程中进行文件下载,并通过Handler更新UI中的进度条和弹出Dialog提示用户。 首先,我们需要理解Android的多线程概念。Android应用的主要交互发生...

    安卓Android源码——HandlerLooper2.rar

    这个压缩包“安卓Android源码——HandlerLooper2.rar”可能会包含对这些概念的实例解析,比如如何自定义`Handler`,如何在子线程中使用`Looper`,以及如何调试和优化消息传递等。通过学习这些源码,开发者可以更深入...

    安卓Android源码——HandlerMessage3.rar

    在Android系统中,主线程默认有一个运行的 `Looper`,而其他线程需要手动调用 `Looper.prepare()` 和 `Looper.loop()` 来启动消息循环。 创建和使用 `Handler` 的基本流程如下: 1. 在主线程中创建一个 `Handler` ...

    安卓Android源码——HandlerMessage2.rar

    每个线程都有一个`Looper`,默认情况下,主线程(UI线程)已经有一个运行的`Looper`,但子线程需要手动调用`Looper.prepare()`和`Looper.loop()`来启动循环。 创建一个`Handler`通常包括以下步骤: 1. 创建`Handler...

    Android线程结束——合理的结束你想结束的线程

    在Android开发中,线程管理是一项重要的任务,尤其是在处理耗时操作时,如网络请求、数据库操作或大计算量的任务。本篇文章将深入探讨如何合理地结束Android中的线程,以确保应用程序的性能和稳定性。 首先,理解...

    Android源码——多线程断点下载源码.zip

    综上所述,Android多线程断点下载涉及网络请求、多线程并发、文件操作、状态管理等多个方面,理解并掌握这些知识点对于Android开发者来说至关重要。通过分析提供的源码,开发者可以学习到实际的实现方式,从而在自己...

    Handler的基本使用

    在Android开发中,`Handler`是一个至关重要的组件,主要用于处理线程间的通信,尤其是主线程(UI线程)与后台线程之间的数据交互。本文将详细介绍`Handler`的基本使用及其在更新UI中的应用。 首先,我们需要理解...

    android多线程异步下载图片

    在Android开发中,多线程异步下载图片是一项常见的需求,尤其在开发涉及大量图片展示的应用时,如社交应用、电商应用等。这样的技术能够提高用户体验,避免UI卡顿,因为图片加载工作不会阻塞主线程。下面我们将深入...

    android多线程下载图片例子

    Android提供了一个轻量级的异步任务类——`AsyncTask`,它非常适合进行短时间的后台操作,比如下载小图片。`AsyncTask`包含三个泛型参数:`Params`(输入参数),`Progress`(更新进度)和`Result`(返回结果)。在...

    安卓Android源码——HandlerMessage1.rar

    每个线程都有一个关联的 `Looper`,主线程默认已经启动了 `Looper` 循环,而子线程需要手动调用 `Looper.prepare()` 和 `Looper.loop()` 来启动。 在安卓应用中,我们常常在后台线程执行耗时任务,完成后通过 `...

    Android 之 Looper、MessageQueue、Handler 与消息循环

    - **后台任务**:当执行耗时操作如网络请求、数据加载时,可以通过创建一个新的线程并在其中使用Handler来处理这些任务,避免阻塞UI线程。 - **UI更新**:使用Handler可以在非UI线程中执行任务,并将结果传回UI线程...

    andriod多任务多线程下载

    在Android平台上,多任务多线程下载是一种常见的技术,它能显著提高下载效率,尤其是在处理大文件或多个文件时。这种技术充分利用了设备的处理器资源,使得多个下载任务可以同时进行,提高了用户等待时间的利用效率...

    android多线程机制

    当应用程序需要执行耗时操作时,通常会创建一个新的线程(子线程)来处理这些任务,以避免阻塞主线程。 #### 三、消息机制的核心组件 Android的消息机制主要包括以下几个关键组件: 1. **Message**:消息的载体,...

    Android多线程及异步处理问题详细探讨

    在实际应用中,可以通过创建一个新的线程并为其准备Looper,然后在主线程中创建Handler并指定这个新线程的Looper。这样,Handler就可以在主线程和工作线程之间传递消息,实现异步操作。 例如,我们可以创建一个名为...

    安卓Android源码——断点下载.zip

    4. 线程管理:由于下载通常是一个耗时操作,我们通常会在后台线程进行,避免阻塞主线程。Android的AsyncTask、IntentService或者Handler/Looper机制都可以用来实现后台下载。 5. 数据持久化:为了在应用关闭后还能...

Global site tag (gtag.js) - Google Analytics