Android - 运行 任务在后台按请求顺序

Android - Running tasks in the background in order of request

这是我第一次来这里。我希望我的问题足够清楚。

我想在 Activity 开始时初始化一个 Decoder 对象并保持空闲状态,直到请求执行 Decoder.decode(int x),我想 运行 ]在后台按请求顺序。

例如,Decoder.decode(int x) 需要超过 1 秒才能完成,但我每秒向 运行 调用一次请求。我想调用 Decoder.decode(int x) 等待上一个调用完成后再开始执行。

目前,我正在使用 Service 并将其绑定到我的 activity。初始化部分在onBind()中完成。每次发出请求时,该服务都会在其 doInBackground 方法中创建一个 AsyncTask 和 运行 Decoder.decode(int x)。这是正确的方法还是我应该做其他事情?

感谢您的帮助。

您可以使用 AsyncTasks 或线程的阻塞队列来按顺序执行操作。您还可以使用这样的库:

https://github.com/path/android-priority-jobqueue