将更新的数据发送到后台线程

时间:2010-10-21 18:49:13

标签: android multithreading backgroundworker

我有一个后台线程,它将有关应用程序当前状态的数据发送到服务器。该线程应该经常 - 或者至少在状态发生变化时 - 发送这些数据。

数据来自用户界面,用户可以随时更改状态(通过手指在屏幕上移动),因此我需要告诉后台线程发送更新的数据。

有没有Android方法可以做到这一点?我的解决方案是保持线程的实例可用,并添加一些方法来允许设置要发送的线程的内部数据。但是我甚至不确定这是否有效(假设线程不在主线程上运行,其中更新它的命令将来自)。我之前看过AsyncTask,因为这似乎是后台工作者的标准解决方案,但我没有看到任何可以将数据推送到该任务的东西(它只会将数据/进度报告回UI线程)。 / p>

1 个答案:

答案 0 :(得分:0)

你的后台工作者不能每隔几毫秒检查一次线程安全的数据结构吗?主线程只是填充了这个,后台工作者用它做了它想要的东西。

或者只使用信号量包围的静态变量。丑陋但它会起作用。