`
happy90
  • 浏览: 62193 次
  • 性别: Icon_minigender_1
  • 来自: 中国
社区版块
存档分类
最新评论

Android线程

阅读更多
Android中启动线程的方法:

1. 直接调用线程的start方法,真正的启动一个线程
2. 利用Handler的post方法,调用一个Runnable的run方法

可见第二种方法并未真正的启动一个线程。
问题就来了:
1,Android中第二种方法的意义是什么?
2,在onCreate方法中,进行耗时操作时(例如从网络下载数据),通常是启动一个线程来完成,避免主线程的阻塞。那么使用post方法,是否能够达到同样的目的。


一般的Handler确实没有启动一个线程。除非用handlerThread才可以,并且handlerThread要先start,再将它的looper传给handler。

问题1:
其实handler的可以说提供了一个线程间通信的很好的方法。
问题2 :
用post,在没用handlerThread的情况下,handler就是使用的实例化它的那个线程的资源,这里就是UI线程,也就是肯定会把UI阻了

handler是android系统中,子线程和UI线程通讯的传递员,最终handler中的handMessage方法是UI线程来调用的,也就意味着,在重写handMessage方法里,不要将耗时的操作放在这个方法里,因为这个方法,只是主现在用来更新UI的。
分享到:
评论

相关推荐

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

    总结,结束Android线程时,关键在于优雅、安全地中断操作,而不是简单粗暴地停止。合理的线程管理可以提升用户体验,避免ANR,并保持应用程序的稳定运行。正确使用Thread、AsyncTask、Handler和Looper等工具,结合...

    浅谈android线程模型

    ### 浅谈Android线程模型:深入理解与实践 #### 引言 随着智能手机的普及和技术的不断进步,Google的Android操作系统成为了移动设备领域的重要力量。Android不仅为用户提供了丰富的功能,也为开发者提供了广阔的...

    android 线程之间通过Handler发送消息

    首先,理解Android线程模型至关重要。Android应用的主要工作线程被称为UI线程或主线程,它负责处理用户界面的更新和事件响应。后台线程通常用于执行耗时任务,避免阻塞UI线程。为了在后台线程和主线程之间交换数据和...

    android 线程暂停/恢复/退出demo

    在Android开发中,多线程是必不可少的一部分,特别是在处理耗时任务时,如网络请求、数据库操作或大计算量的任务。...通过实践这个“android 线程暂停/恢复/退出demo”,开发者可以加深对Android线程管理的理解。

    从现实生活中理解android 线程消息机制

    在Android系统中,线程消息机制是一个核心概念,它确保了应用程序的高效运行和用户体验的流畅性。这个机制主要由三部分组成:Handler、Looper和Message Queue。下面我们将从现实生活中的例子来深入理解这个机制,并...

    android 线程详解 各种经典 完整代码

    本文将深入探讨Android线程的概念、类型以及如何有效地利用线程进行编程,包括各种经典用法,并提供完整的代码示例。 一、Android线程基础 在Android系统中,主线程也称为UI线程,负责处理用户界面的所有交互。由于...

    Android线程间通信的Message机制

    Android线程间通信的Message机制Android线程间通信的Message机制Android线程间通信的Message机制Android线程间通信的Message机制Android线程间通信的Message机制

    Android 线程 多线程 Multi-thread

    本篇文章将详细介绍Android线程的基础知识、使用方法及同步机制等内容。 #### 一、Android线程概述 在Android应用开发过程中,线程的应用非常广泛。线程作为进程中的执行单元,可以被用来处理一些耗时操作,如网络...

    android 线程入门教程

    根据提供的文件信息,我们可以提炼出Android线程入门教程的相关知识点。本教程主要面向Android开发新手,着重介绍Android中的线程机制,包括UI线程模型以及线程间通信的方法。 知识点一:Android UI单线程模型 ...

    Delphi XE5例子中的一个Android线程使用的代码AnonymousThread.rar

    在Delphi XE5开发环境中,Android应用程序的多线程编程是提高应用性能和响应性的重要手段。这个名为"AnonymousThread"的示例项目旨在教你如何在Android平台上创建和管理线程,特别是在Delphi XE5环境下。让我们深入...

    android 线程通信学习

    本教程将深入探讨Android线程通信的基本概念、常用方法以及如何通过Demo来实践这些技术。 一、Android线程基础 Android系统的主要线程被称为“主线程”或“UI线程”,负责处理用户界面的交互事件,如触摸事件、...

    android线程启动方法源代码

    本文将深入解析Android线程启动的方法,并通过源代码示例帮助初学者理解和掌握这一关键技能。 Android系统基于Java,因此其线程机制遵循Java的基本规则,但同时也有一些特定于Android平台的特性。在Android中,主要...

    android 线程间通讯

    在Android系统中,线程间通信(Inter-Thread Communication,简称ITC)是应用程序开发中的重要环节,尤其在处理耗时操作或者优化UI性能时显得至关重要。线程间通信允许不同线程之间交换数据和执行任务,以确保主线程...

    Android线程间 massage 机制

    因此,理解并掌握Android线程间的通信机制,尤其是message(消息)机制,对于优化应用性能至关重要。 Android线程间通信的主要方式有:Handler、Looper、Message以及BroadcastReceiver等。其中,Handler-Looper-...

    android 线程间通信

    ### Android线程间通信详解 #### 一、引言 Android应用程序通常运行在单个主线程上,称为“主线程”或“UI线程”。为了提高应用性能和用户体验,开发者经常需要利用多线程技术来执行后台任务,比如下载图片、获取...

    Android 线程更新UI

    ### 一、Android线程基础 1. **主线程(UI线程)**:应用程序启动时默认创建的线程,负责处理所有的用户交互和UI更新。由于Android系统规定,所有的UI操作都必须在主线程进行,以保证界面的流畅性。 2. **工作线程...

    android线程之间通信原理

    本例中简单运用了线程间通信原理,简单明了,适合初学线程通信

    Android线程异步Demo代码

    下面将详细解释`Android线程异步Demo代码`中的关键知识点。 1. **AsyncTask**:AsyncTask是一个轻量级的异步任务框架,用于在后台线程执行任务并在UI线程更新结果。它包含三个泛型参数,分别是`Params`(输入参数)...

    android 线程间通信显示同步时间

    在Android应用开发中,线程间通信是必不可少的技能,特别是在涉及到UI更新和后台任务执行时。本主题将深入探讨如何在Android中实现线程间通信,并以显示同步时间为例,展示具体的操作流程。 首先,Android系统是...

    【Android开发入门】Android线程之Handler

    一、Android线程基础 Android系统主要分为两个线程:主线程(UI线程)和工作线程。主线程负责处理用户界面的绘制和事件响应,而工作线程用于执行耗时操作,避免阻塞UI。由于Android系统的安全限制,直接在工作线程中...

Global site tag (gtag.js) - Google Analytics