为什么以及何时应该使用处理程序?

时间:2018-05-20 01:34:36

标签: android android-asynctask handler

我最近看到了一个秒表应用程序的示例,其中开发人员使用处理程序对象来更新TextView上显示的时间。为什么不使用一个不断更新文本的普通循环而不是使用处理程序?

1 个答案:

答案 0 :(得分:2)

每个应用都有自己的特殊线程来运行UI对象,例如View对象;此主题称为 UI Thread

考虑到秒表示例,如果您只是在活动中添加循环并保持时间,则阻止您的UI线程,您的应用可能会无响应。为了克服这个问题而不是阻止UI /主线程,我们使用单独的线程来执行这样的持续/长期任务。

所以他所做的是创建Handler,它将执行长时间运行的任务,并在需要时发送update to UI thread以更新textView。