首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理Web3事务?

批处理Web3事务?
EN

Ethereum用户
提问于 2017-08-16 00:13:00
回答 2查看 1.1K关注 0票数 0

我希望确保一些事务以特定的顺序执行,同时同时将它们全部发送出去(最好是在单个块内)。以下是这些交易的样子:

  1. 基金ETH
  2. 与契约互动
  3. 与契约互动

2依赖于第1次运行,3依赖于第2次运行。

看来我可以用网络3‘S批次来保证这个订单。我是否可以或web3批处理只保证此节点将消息一起传播到下一个节点?

EN

回答 2

Ethereum用户

发布于 2017-08-16 00:20:04

不,如果它们是单独的事务,则由挖掘节点的事务排序规则来确定它们是否都发生在同一个块中。

如果您想要原子事务,我建议您使用一次性的、自毁的合同来为您完成工作。

就像这样:

代码语言:javascript
复制
contract AtomicInteraction {
  function AtomicInteraction() payable {
    // Fund ETH
    // Interact with Contract
    // Interact with Contract
    selfdestruct(msg.sender);
  }
}

您可能会让它更加通用,并让它为每条消息接受一个地址数组和一个数据数组,但对于可能需要一些特定于应用程序的逻辑来说,这是一个相当复杂的解决方案。

票数 1
EN

Ethereum用户

发布于 2018-01-21 07:41:45

您将需要编写一个定制的等待挖掘函数,该函数通过将事务哈希传递到web3.eth.getTransactionReceipt()来根据上一个事务的事务接收发送一个新事务,并使用基于阻塞时间的js setTimeout函数对其进行rap处理。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/24430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档