Java 如何在Android中创建串行队列?

Java 如何在Android中创建串行队列?,java,android,multithreading,Java,Android,Multithreading,在iOS中,我可以创建如下GCD串行队列: let serialQueue = DispatchQueue(label: "serialQueue") 块按FIFO顺序执行,一次执行一个块。我如何在安卓系统中做到这一点 这就是如何在队列上执行代码块: serialQueue.async { 正如IAsyncTask是串行的:“从蜂巢开始,任务在单个线程上执行,以避免并行执行导致的常见应用程序错误。” 我猜这是先进先出,执行 找到JAVA 8并发教程。使用。您可以传递表示要完成的工作的Runn

在iOS中,我可以创建如下GCD串行队列:

let serialQueue = DispatchQueue(label: "serialQueue")
块按FIFO顺序执行,一次执行一个块。我如何在安卓系统中做到这一点

这就是如何在队列上执行代码块:

serialQueue.async {
正如I
AsyncTask
是串行的:“从蜂巢开始,任务在单个线程上执行,以避免并行执行导致的常见应用程序错误。”

我猜这是先进先出,执行


找到JAVA 8并发教程。

使用。您可以传递表示要完成的工作的
Runnable
Callable

使用。您可以传递表示要完成的工作的
Runnable
Callable

根据您的具体要求,有许多选项。如果我没弄错你的问题,你需要一个遗嘱执行人。并对其进行扩展以创建一个SerialExecutor,如下所示


这些街区是什么?功能?您需要创建可运行对象,以便执行器执行每个块

根据您的具体要求,有许多选项。如果我没弄错你的问题,你需要一个遗嘱执行人。并对其进行扩展以创建一个SerialExecutor,如下所示


这些街区是什么?功能?您需要为执行者创建可运行对象以执行您的每个块

AsyncTask
有何利弊?@János:
AsyncTask
专门用于您希望在后台线程(
doInBackground()
)上工作的场景,然后继续在主应用程序线程上完成工作(
onPostExecute()
)。如果您不需要这种行为,
AsyncTask
没有任何好处。
AsyncTask
有什么优点和缺点吗?@János:
AsyncTask
专门用于希望在后台线程上工作的场景(
doInBackground()
),然后继续在主应用程序线程(
onPostExecute()
)上完成工作。如果您不需要该行为,那么
AsyncTask
没有任何优势。