关闭

关于Handler.post(Runnable runnable)的解释

1117人阅读 评论(0) 收藏 举报

http://stackoverflow.com/questions/5316393/handler-looper-implementation-in-android

http://developer.android.com/reference/android/os/Handler.html#post(java.lang.Runnable)

Causes the Runnable r to be added to the message queue. The runnable will be run on the thread to which this handler is attached.


这里是指这个Runable会加入的消息队列当中,同时会在handler所在的线程上运行。


也就是说,post(Runnable runnable) 并没有开启新的线程,这时我们就要注意了,当我们在UI主线程当中这样处理大事件时不能用此方法开启线程,

要使用

Thread thread = new Thread(runnable);
thread.start();

的方式开启线程。

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

从Handler.post(Runnable r)再一次梳理Android的消息机制(以及handler的内存泄露)

Handler每个初学Android开发的都绕不开Handler这个“坎”,为什么说是个坎呢,首先这是Android架构的精髓之一,其次大部分人都是知其然却不知其所以然。今天看到Handler.pos...
  • ly502541243
  • ly502541243
  • 2016-07-29 10:25
  • 23606

handler.post方法的终极最直观的理解与解释

网上看了10篇左右的博客,都没有把为什么要用handler.post方法说清楚,云里雾里的。 本文我想说明的是为什么要使用handler.post方法,它和常用的handler.sendmessage...
  • u012534831
  • u012534831
  • 2016-08-15 16:19
  • 3811

Android 自定义View的post(Runnable)方法非100%执行的原因和处理方法解析

最近在写一个需求,需要在view.post(Runnable)方法当中进行一些操作。但是实际使用中(特定场景)发现并不靠谱。得到的现象是: 如果调用了view的post(Runnable)方法,该...
  • Xavier__S
  • Xavier__S
  • 2015-12-11 10:56
  • 4276

Handler的post(Runnable)

首先看一段在子线程中更新UI的操作 Handler handler = new Handler(); //这是Button的点击事件 public void onClick(View v) { ...
  • ButtonXin
  • ButtonXin
  • 2016-06-30 22:42
  • 217

从Handler.post(Runnable r)再一次梳理Android的消息机制(以及handler的内存泄露)

Handler 每个初学Android开发的都绕不开Handler这个“坎”,为什么说是个坎呢,首先这是android架构的精髓之一,其次大部分人都是知其然却不知其所以然。今天看到Handler...
  • weijinqian0
  • weijinqian0
  • 2017-07-25 10:36
  • 145

Android开发中更新UI时runOnUIthread(Runnable)与Handler.post(Runnable)的区别及如何选择

我们都知道,android中的View不是线程安全的,只有主线程/UI线程(主线程和UI是等同的)才能更新UI,否则会报错。runOnUiThread(Runnale)和Handler.post(Ru...
  • Great_l001
  • Great_l001
  • 2016-06-25 10:23
  • 511

android开发笔记之handler+Runnable的一个巧妙应用

1. 一个有趣Demo: (1)定义一个handler变量 private final Handler mHandler = new Handler(); (2)定义一个Runnable变...
  • hfreeman2008
  • hfreeman2008
  • 2013-09-28 14:47
  • 2694

Android开发:Handler Runnable和Thread之间的区别和联系 应用--------------------看完本篇,从此一览无余!

在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()...
  • xiaoluoli88
  • xiaoluoli88
  • 2013-12-23 11:21
  • 414

Handler中Runnable 并不是新开一个线程

Runnable 并不一定是新开一个线程,比如下面的调用方法就是运行在UI主线程中的: Handler mHandler=new Handler(); mHandler.post(new Ru...
  • zwq1457
  • zwq1457
  • 2012-09-25 10:14
  • 3099

异步处理(Handler)线程(Thread&Runnable)定时器(Timer)Wifi管理(WifiManager&WifiInfo)

Handler.post(Runnable)方法的执行原理:http://blog.csdn.net/vampire0072009/article/details/43273375 Java中Runn...
  • u012966861
  • u012966861
  • 2017-03-06 13:42
  • 206
    个人资料
    • 访问:483474次
    • 积分:6825
    • 等级:
    • 排名:第3972名
    • 原创:192篇
    • 转载:2篇
    • 译文:6篇
    • 评论:178条
    文章分类