0

大家,早安,

我每 40 毫秒从 android 向设备发送数据。到目前为止,我一直在使用 while(true) 线程和 thread.sleep,因为我不知道更好:)。现在我看到我有很多“更好”的选择,例如:

定时器任务

异步任务

ScheduledThreadPoolExecutor

哪一个最适合我的场景?请记住,如果设备断开连接,可能会引发异常,因此我需要停止发送值,直到连接恢复。此外,数据必须以非常精确的间隔发送,并且在任何情况下都不应在前一个数据之前的 40 毫秒内发送。

谢谢!

4

1 回答 1

1

但是,在该 AsyncTask 之前的许多选项并不真正属于该列表。Asynctask 仅用于在主 UI 线程之外的后台线程中执行操作,并不真正用于调度重复任务。

对于重复任务,选项包括:

  1. Android:定期执行代码
  2. 使用倒数计时器作为倒数计时器在主线程中执行(如果这是您想要的)
  3. 或者使用 TimerTask。

我对您的情况的建议是选项 1 或 3。

-V

于 2013-05-21T20:18:51.700 回答