如何写一个corda flow

大部分的智能合约平台是用消息广播的形式来传播数据或者小道消息网络来共享数据,

Gossip协议是流行病协议,是那种把消息传播到附近的几个点然后最终扩散到全体区块链的协议,符合最终一致性

也就是说corda可以决定什么时候和谁交流什么东西

Steps:

  1. Alice创建一个新的交易请求并且对它签名
  2. Alice发送请求和签名到Bob
  3. Bob检查请求,验证并对它签名
  4. Bob发回交易和签名到Alice

编写flow主要把流程写在call里面

@Suspendable非常重要,因为它会把call变成一个no-breaking,不加的话会等待另一个节点返回,占用线程池的资源

@InitiatingFlow是说明这个flow是可以直接触发的,@InitiatedBy是说明那个流程是不可以直接触发的

@StartableByRPC是说可以用rpc直接触发这个flow