`
rayln
  • 浏览: 434465 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Handler多线程二(推荐)

 
阅读更多
例子:
public class HandlerTest extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        System.out.println("activity-->"+Thread.currentThread().getId());
        HandlerThread h = new HandlerThread("handler_thread");
        h.start();
        MyHandler myHandler = new MyHandler(h.getLooper());
        Message m = myHandler.obtainMessage();
		//参数传递
        m.arg1 = 123;
        m.obj = "abc";
		//通过Bundle传递参数
        Bundle b = new Bundle();
        b.putInt("age", 20);
        b.putString("name", "guanrl");
        m.setData(b);
        //将Msg发送到目标对象,所谓的目标对象,就是生成该msg对象的handler对象
        m.sendToTarget();
    }
    class MyHandler extends Handler{
      	public MyHandler(Looper looper){
    		    super(looper);
     	}

		@Override
		public void handleMessage(Message msg) {
			System.out.println(Thread.currentThread().getId());
			System.out.println("handlerMessage");
		}
    	
      }
}

PS:该例子使用HandlerThread可以使得onCreate方法和handlerMessage方法处于不同的线程中(推荐使用!!)
分享到:
评论

相关推荐

    Handler多线程处理简单实例

    本实例将深入探讨`Handler`如何与多线程协同工作,帮助开发者更好地理解和运用。 `Handler`类在Android中扮演着消息传递的角色,它主要负责在不同的线程之间发送和处理消息。通常,主线程(UI线程)用于处理用户...

    利用Handler在线程之间传递数据

    这个demo介绍了通过Handler在线程之间传递消息,demo中一个三个线程,主线程,发送消息的分线程,接收消息的分线程。发送消息的分线程会通知主线程更改标签文字,同时会通知接收消息的分线程更改进度条的进度。

    Android利用handler在线程之间传递代码

    总结来说,Handler机制是Android多线程编程的关键工具之一,它使得开发者能够方便地在线程间传递信息,实现异步处理,确保UI线程不被阻塞,提升用户体验。熟练掌握Handler的使用,对任何Android开发者都至关重要。

    android多线程handler/message机制详解

    Android 多线程Handler/Message机制详解 Android 多线程机制是 Android 应用程序中最重要的组件之一,它允许应用程序在后台执行一些操作,而不影响用户的交互体验。在 Android 中,多线程机制是基于 Handler 和 ...

    Android 多线程:使用Thread和Handler

    本篇文章将详细探讨如何在Android中使用Thread和Handler实现多线程通信,确保非UI线程能够安全地更新UI。 首先,Android应用程序的主线程(UI线程)主要负责管理用户界面,处理用户交互事件。主线程不允许执行长...

    android 多线程 looper handler

    Android 多线程 Looper Handler Android 操作系统中,多线程是一种常见的编程技术,通过使用多线程,可以提高应用程序的响应速度和效率。在 Android 中,多线程可以分为两种:有消息循环的线程和没有消息循环的线程...

    Handler 消息机制 多线程 应用场景

    Handler消息机制是Android系统中处理多线程通信的核心组件,它在应用程序开发中扮演着重要角色。通过Handler、Looper和Message三者之间的协同工作,开发者可以在主线程与子线程之间进行安全的数据传递和任务调度。 ...

    Android中多线程的Handler原理

    Android中多线程的Handler的工作原理,其中涉及到MessageQueue和Looper。详情可以参见博客:http://www.cnblogs.com/plokmju/p/android_Looper.html

    andriod多线程通信handler方法

    - `app` 文件夹包含了应用的源代码和资源文件,其中可能有实现Handler多线程通信的具体代码。 以上就是关于"andriod多线程通信handler方法"的详细解释,以及与之相关的Android项目结构。通过理解并熟练运用Handler...

    Handler与Android多线程详解

    下面是一段大家都比较熟悉的代码: 代码如下:Handler ...上述代码中的handler并没有调用线程myThread的start()方法,而是直接调用了run()方法,这也就意味着实际上并没有创建一个新的线程,只是在当前线程中调用run()

    handler线程

    2. **线程安全**:在多线程环境下使用 `Handler` 时要注意线程安全问题,确保消息的发送和处理不会出现错误。 3. **性能优化**:合理设计 `Handler` 的使用方式可以帮助提高应用程序的性能,比如减少不必要的消息...

    Android Handler 线程 示例代码

    在Android开发中,`Handler`、`Thread`、`Toast`、`消息队列`以及`线程`是实现UI交互和异步处理的关键概念。本文将深入探讨这些概念,并结合给定的"Android Handler 线程 示例代码"进行详细讲解。 首先,我们来看`...

    Android多线程文件上传

    在Android应用开发中,文件上传是一项常见的任务,尤其是在处理大文件或者需要提高用户交互体验时,多线程技术显得尤为重要。本主题聚焦于"Android多线程文件上传",我们将探讨如何利用多线程技术来优化文件上传过程...

    Android线程操作 handler demo

    此时,Android提供了多种多线程解决方案,其中之一就是Handler机制。本篇将详细讲解如何在Android中使用Handler进行线程间通信。 Handler是Android中处理消息和回调的核心组件,它与Looper和Message紧密配合,实现...

    使用Handler.post()对线程进行管理,实现同步

    这里使用post()将多个线程提交到Handler的MessageQueue里面,这样线程就会顺序执行,这样任务所操作的对象在同一时间里就不会有多个线程同时操作了,也就实现了同步操作了。同时注意,队列是同步操作的一个重要手段...

    Handler实现线程

    总之,`Handler`机制是Android中非常重要的多线程通信方式,它使得我们可以灵活地在不同线程之间传递消息,实现异步操作,提高应用的性能和用户体验。在实际项目中,正确地理解和运用`Handler`、`Looper`和`Message`...

    Android中的Handler与多线程应用实例

    Handler在多线程中的作用就是连接后台线程和主线程,让它们能够安全地交换数据。 1. Handler的基本原理: Handler的核心是消息队列和循环器(Looper)。每个线程都有一个Looper,Looper负责从消息队列中取出消息并...

    android——多线程

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

    Android Handler Message 多线程实例 - Intel- Developer Zone

    Android Handler Message 多线程实例 - Intel- Developer Zon

Global site tag (gtag.js) - Google Analytics