gpt4 book ai didi

安卓设计 : How to run 3 different threads in Background for monitoring 3 different devices

转载 作者:行者123 更新时间:2023-11-29 22:22:40 25 4
gpt4 key购买 nike

我有一个应用程序,我想通过 Android 手机监控 3 个蓝牙设备的状态。为此,我需要向每个设备发送一些数据并每 5 秒检查一次它们的响应是否正确。我希望即使应用程序不在前台也能进行此处理。我想了很多不同的解决方案,但我想不出任何好的解决方案。

  • 我想到了使用 IntentService。但是 IntentService 使用一个线程来完成所有处理。但我想要 3 个不同的线程,因为每次检查之间的 5 秒时间很短,我无法在单个线程中检查设备之间跳转。

  • 我想到了使用 3 种不同的 IntentService。但不确定,这是否是最好的方式?

  • 我想到了使用一个服务并生成 3 个线程,一个用于每个设备。但是我不确定当应用程序不在前台时这些线程是否会运行。

    运行这种应用程序的最佳设计是什么,即使应用程序不在前台并且它必须运行 3 个不同的线程,它也会在应用程序中进行后台处理。

最佳答案

一个Service,三个Thread就是你想要的。让一个线程在多个设备上执行 I/O 似乎是在自找麻烦,它创建了一个不必要的依赖项。无论应用程序是前台还是后台,所有线程都会执行。

Android 框架无法阻止线程运行。线程执行由 Dalvik 管理。当应用程序处于后台时,框架会停止向应用程序的主线程传递事件(BroadcastIntents 等事件除外),但它不会告诉 Dalvik 暂停该进程中的所有线程。如果这样做的话,这会有点破坏后台处理的目的。

关于安卓设计 : How to run 3 different threads in Background for monitoring 3 different devices,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6756430/

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