问题描述
什么是使用之间的区别/优点/缺点 Activity.runOnUiThread
或 Handler.post(可运行动作)
的的android?
What's the differences/ advantages / drawbacks between using Activity.runOnUiThread
or Handler.post(runnable action)
in android ?
推荐答案
Activity.runOnUiThread,就像它的名字所暗示的,将执行的可运行在目前负责的UI线程。所以,如果你有一个CPU密集型任务,它可以使用户界面无响应的时间很短。相反,处理程序提供了一种方法可以让你创建一个线程,运行一些code,并通知用户界面,当你完成(即Handler.sendMessage)。
Activity.runOnUiThread, like it's name implies, will execute the Runnable in the thread that is currently responsible for the UI. So, if you have a CPU intensive task, it can make the UI unresponsive for a short period of time. Conversely, Handler provides a way for you to create a thread, run some code, and notify the UI when you are done (i.e Handler.sendMessage).
该文档的处理程序状态这比我更可以:
The docs for Handler state this better than I can:
当为创建一个过程你 应用程序,它的主线程 专门用来运行一个消息队列 这需要管理的护理 顶级应用程序对象 (活动,广播接收机等) 和任何窗口他们创造。您可以 创建自己的线程, 与主通信回 通过处理程序应用程序线程。 这是通过调用同一职位做 或方法的sendMessage像以前一样,但 从你的新的线程。给定 Runnable或信息会比被 定处理程序的消息 排队并处理在适当的时候。
这篇关于什么是Activity.runOnUiThread(可运行操作)和Handler.post()之间的区别是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!