gpt4 book ai didi

java - 何时线程。何时不使用线程

转载 作者:行者123 更新时间:2023-12-01 19:16:52 25 4
gpt4 key购买 nike

我对线程的概念很陌生,但对异步行为并不陌生。我的 Android 应用程序启动时间约为 180 毫秒,当我使用 GoogleAnalytics trackViewPage 方法和 MobFoxView 构造函数时,启动时间约为 550 毫秒。从 Actionscript 3 开始,任何“需要时间”的事情都会自动异步,我被迫用监听器来处理它,这在 Android 中似乎有点不同。看起来负责决定什么时候应该异步。所以我想我的问题是,如何我决定什么应该是异步的?是按毫秒执行吗?但也许不同设备之间的情况会有很大变化。或许应该是由……或者是由……?

最佳答案

您需要知道一件重要的事情 - 默认情况下,您在不启动单独线程的情况下所做的所有操作都在“主”线程(也称为 UI 线程)上执行。

如果你做了一些可能会阻塞的事情 - 你的 UI 将会滞后,用户将会受到影响。

如果您执行的操作与 UI 无关,而是与数据库查询、网络调用或潜在的长阻塞操作相关,则需要直接启动线程或使用 AsyncTask。

此外,您必须注意,如果您尝试从非主线程对 UI 执行某些操作(例如,将值设置为 TextView),您将会失败。 UI 只能从 UI-Thread 访问。

关于java - 何时线程。何时不使用线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6225672/

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