有没有一种方法可以将多个交易发送到交易对手而不会循环

时间:2018-07-31 08:01:46

标签: corda

是否有一种方法可以在不使用流程循环的情况下将多个交易发送给交易对手?循环发送一次tx会对性能产生重大影响,因为Suspendable行为不适用于大量tx。

在某个时间点T上,发起人可能有兴趣向监管机构/交易方发送N笔交易。但是当前的SendTransactionsFlow一次只能发送一个TX。另一方面,ReceiveTransactionFlow一个一个地记录。

我当前的代码

relevantTxes.forEach{
       subFlow(SendTransactionFlow(session, signedTx))
}

有没有办法做某事

subFlow(SendTransactionFlow(session, relevantTxes))

1 个答案:

答案 0 :(得分:0)

您可以使用sendreceive发送事务列表,而无需调用子流。

在发件人一方:

val session = initiateFlow(otherParty)
session.send(relevantTxes)

在接收方方面:

session.receive<List<SignedTransaction>>().unwrap { relevantTxes -> relevantTxes }