Corda事件调度中的可调度状态
Schedulable State in Corda Event scheduling
我通过继承可调度状态尝试事件调度功能,我也测试了心跳示例。
- 调度事件是否仅在可调度状态是新发布或通过消费更新时发生?是否可以使用相同的未使用状态执行重复事件?
- 当一个可调度状态有两方参与时,nextScheduledActivity()函数中提到的调度流程实际上由谁发起?
(我知道它会自动发生,但是哪一方会发起
那个流量?)
发出可调度状态的Party是否也在启动可调度流?
请帮助我理解这一点。谢谢!
创建可调度状态时会调度 activity,如果消耗了 activity 则不会调度。所以每个州可以有一个 activity。您需要使用状态来安排新时间。看看这个class,它负责调度/取消调度活动:https://github.com/corda/corda/blob/release/os/4.7/node/src/main/kotlin/net/corda/node/services/events/ScheduledActivityObserver.kt
activity会在所有记录了状态的节点中触发,你需要在你的流程中有一个逻辑来限制来自运行的流程谁不应该运行呢。这应该给你一个想法:https://github.com/corda/samples-java/blob/master/Advanced/auction-cordapp/workflows/src/main/java/net/corda/samples/flows/EndAuctionFlow.java
Link 到 CordaLedger Slack 对话:
https://cordaledger.slack.com/archives/C2KGD72UX/p1600771838039700
我通过继承可调度状态尝试事件调度功能,我也测试了心跳示例。
- 调度事件是否仅在可调度状态是新发布或通过消费更新时发生?是否可以使用相同的未使用状态执行重复事件?
- 当一个可调度状态有两方参与时,nextScheduledActivity()函数中提到的调度流程实际上由谁发起? (我知道它会自动发生,但是哪一方会发起 那个流量?)
发出可调度状态的Party是否也在启动可调度流?
请帮助我理解这一点。谢谢!
创建可调度状态时会调度 activity,如果消耗了 activity 则不会调度。所以每个州可以有一个 activity。您需要使用状态来安排新时间。看看这个class,它负责调度/取消调度活动:https://github.com/corda/corda/blob/release/os/4.7/node/src/main/kotlin/net/corda/node/services/events/ScheduledActivityObserver.kt
activity会在所有记录了状态的节点中触发,你需要在你的流程中有一个逻辑来限制来自运行的流程谁不应该运行呢。这应该给你一个想法:https://github.com/corda/samples-java/blob/master/Advanced/auction-cordapp/workflows/src/main/java/net/corda/samples/flows/EndAuctionFlow.java
Link 到 CordaLedger Slack 对话: https://cordaledger.slack.com/archives/C2KGD72UX/p1600771838039700