gpt4 book ai didi

java - Looper、工作线程等并发问题

转载 作者:行者123 更新时间:2023-12-02 06:10:17 24 4
gpt4 key购买 nike

有人可以简单地向我解释一下以下术语以及它们之间的关系吗?

  1. handler - 每个线程都有一个处理程序?每个 View 都有一个处理程序?执行post()。操作系统主线程有默认处理程序吗?

  2. 循环器 -

  3. 循环线程 -

  4. post - 将可运行程序添加到线程任务队列的末尾

  5. 任务 - 可运行或消息

  6. executor - 管理线程池来执行某些任务。如果多次执行相同的任务,则很有用。

  7. 计时器 -

  8. runnable 与 message - 何时使用它们?

  9. 线程队列 - 每个线程都有一个任务队列。

我应该熟悉的任何其他术语关于 Android 中的并发问题?

最佳答案

我会尝试简短地解释一下,但要完全理解这些术语,我必须练习开发 Android 应用程序。

处理程序:附加到线程(任何线程)的对象,该对象在其线程中处理消息并执行可运行对象。有时这很重要,因为即只有 UI 线程可以对 View 执行操作,有时后台线程必须使用 UI 线程处理程序在 View 中执行操作

looper 是一个迭代线程消息队列的对象,弹出可运行对象和消息并将它们提供给线程处理程序。 UI线程已经带有一个正在运行的Looper

looper线程是给定looper的线程,这里没什么特别的

发布任务执行者您已经回答了自己

计时器和类来管理少量时间。比如测量几秒或几毫秒,等待一段时间等等。

runnable 与 message 主要区别在于:当您使用 runnables 时,发布者线程必须指定某些操作的实现,而当您使用消息时,处理程序指定某些操作的实现。当您仅使用一张海报和一个 handle 时,您几乎可以互换使用两者。当您有许多不同的线程将相同的内容发布到同一个处理程序时,我会使用消息,反之亦然。

关于java - Looper、工作线程等并发问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21955768/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com