Handler 中 post(Runnable) 和 sendMessage(Message) 的区别
difference between post(Runnable) and sendMessage(Message) in Handler
我只想知道使用 sendMessage (Message msg)
和 post (Runnable r)
的确切区别是什么。
因为即使我们有 Seperate Runnable,这两种方法都将在 Main UI 线程中 运行。
他们实际上在幕后调用了相同的代码。所以这不是一个大问题。 SendMessage 可能稍微更有效率(使用的对象更少,因为 post 将创建一个 Message 对象),但效率太低以至于根本无关紧要。使用 sendMessage 您可以添加一个数据对象以及一个可运行对象,但是如果您不使用匿名对象并通过构造函数将其传入,则可以使用可运行对象来执行此操作。
总而言之,没有太多。使用更方便的那个(通常是post)。
我只想知道使用 sendMessage (Message msg)
和 post (Runnable r)
的确切区别是什么。
因为即使我们有 Seperate Runnable,这两种方法都将在 Main UI 线程中 运行。
他们实际上在幕后调用了相同的代码。所以这不是一个大问题。 SendMessage 可能稍微更有效率(使用的对象更少,因为 post 将创建一个 Message 对象),但效率太低以至于根本无关紧要。使用 sendMessage 您可以添加一个数据对象以及一个可运行对象,但是如果您不使用匿名对象并通过构造函数将其传入,则可以使用可运行对象来执行此操作。
总而言之,没有太多。使用更方便的那个(通常是post)。