首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >近块链中承诺链失效的处理

近块链中承诺链失效的处理
EN

Stack Overflow用户
提问于 2020-09-24 20:24:55
回答 1查看 260关注 0票数 2

我正在为一个近区块链编写一组相互作用的智能契约。让我们想象一下下面的场景

contract

  • Exchange

  • 用户向交换智能合同发送令牌,

  • 令牌智能契约调用交换智能智能合同调用费智能智能合同调用另一个令牌合同在交易中返回另一组令牌。

不像单一的碎片以太,附近的跨合同电话与承诺。虽然单个被绊倒的require()会自动回滚到整个Ethereum事务,但在切分本质上,对于智能契约本身来说,如果它们触发的承诺不能成功完成,则它们自己将负责回滚状态更改。

我的问题是如何安全地处理在近乎聪明的合同之间的承诺链中的失败。

  • (智能契约函数恐慌,目标帐户不包含代码)
  • 如何捕捉以上不同的错误并处理不同的错误模式
  • 已经有一种模式允许安全地编写承诺链,类似于try {} catch {}在JavaScript等待/异步模型
  • 中,如何在不同的承诺之间跟踪导致触发< code >H 220H 121智能合同转发气体的承诺链的不同承诺,并确保整个承诺链有足够的气体来完成H 222<>代码F 223>代码>
EN

回答 1

Stack Overflow用户

发布于 2020-09-24 21:00:12

一般来说,你只能判断承诺是否成功,而不知道在错误的情况下哪里出错了。这样的检查的一个例子可以在这里找到https://github.com/near/core-contracts/blob/4f245101d7d029ffb3450c560770db244fc7b3ce/lockup/src/utils.rs#L7。对不同的错误做出不同反应的用例是什么?

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

https://stackoverflow.com/questions/64053911

复制
相关文章

相似问题

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