DSAppTeam / Anchors

:white_check_mark: Anchors 是一个基于图结构,支持同异步依赖任务初始化 Android 启动框架。其锚点提供 "勾住" 依赖的功能,能灵活解决初始化过程中复杂的同步问题。参考 alpha 并改进其部分细节, 更贴合 Android 启动的场景, 同时支持优化依赖初始化流程, 自动选择较优的路径进行初始化。
Apache License 2.0
820 stars 79 forks source link

demo代码连续调用两次就崩 #6

Closed hnbc8848 closed 5 years ago

hnbc8848 commented 5 years ago

SampleApplication.java // 这里连续调用两次就崩 new TaskTest().start(); new TaskTest().start();

YummyLau commented 5 years ago

SampleApplication

这里你用错了。 你收到的异常应该是 :Caused by: java.lang.RuntimeException: Multiple different tasks are not allowed to contain the same id 。 TaskTest本来就是一棵完整的依赖树。框架在初始化依赖树的时候,每个节点都有一个标志位为唯一,且框架支持同异步节点的依赖链,内部会根据标志进行任务同步初始。连续调用两次没有关系,前提是你要保证每个task都是唯一的。