gpt4 book ai didi

java - 在 android-priority-jobqueue 中检索当前 Activity 作业列表

转载 作者:行者123 更新时间:2023-11-29 06:55:53 26 4
gpt4 key购买 nike

我想知道是否有推荐的方法来检索 https://github.com/yigit/android-priority-jobqueue 中的 Activity 作业列表

这样一来,如果我有持久性作业仍在等待,我可以让用户知道是哪些。

最佳答案

我们不提供此类 API,因为它可能会导致误用。例如检查作业是否存在以决定是否添加(因为这是竞争条件的秘诀)。

如果你真的需要这个,你可以覆盖持久队列并提供你自己的队列,你可以在其中跟踪作业的添加/删除。详情见 JobManager 配置 WIKI:

https://github.com/yigit/android-priority-jobqueue/wiki/Job-Manager-Configuration

编辑:一个竞争条件示例

有人可能会写这样的代码:

if (!jobManager.hasJobOfType(ImportantJob.class)) {
jobManager.addJob(new ImportantJob());
} else {
// it is already added, no need to re add
}

这里有一个潜在的竞争条件,其中 hasJobOfType 返回 true 但同时 Job 将被取消。现在,没有工作可以运行:/。另一个竞争条件是,代码可能在其他地方调用了 addJobInBackground,因此它会被添加,但在调用 hasJobOfType 时尚未添加。

这种情况的最佳解决方案是在 onCancel 中重新创建另一个作业,或者在 onRun 方法(使用全局计数器等)中手动处理先前作业的取消。另一种选择是使用 cancelAsync 方法及其回调版本。

http://yigit.github.io/android-priority-jobqueue/javadoc/index.html

关于java - 在 android-priority-jobqueue 中检索当前 Activity 作业列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34379914/

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