首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当“连锁重组”时,智能契约的变化是什么?

当“连锁重组”时,智能契约的变化是什么?
EN

Ethereum用户
提问于 2018-11-20 07:30:38
回答 1查看 252关注 0票数 0

最近我学到了“连锁重组”。

当“连锁重组”时,智能契约的变化是什么?

例如,

代码语言:javascript
复制
contract Contract{
    event LOG_Increase();
    uint sum = 0;

    function Increase() public {
        sum++;
        emit LOG_Increase();
    }    
}

当调用将sum从0增加的实体函数D2时,如果包含事务的块由于‘链重组’而被丢弃,sum是否变成1,然后又变成0?还是0没有变化?那么LOG_Increase事件呢?

我英语说得不好,得到了翻译的帮助。感谢您的理解。

EN

回答 1

Ethereum用户

回答已采纳

发布于 2018-11-20 07:44:50

首先要说明的是:连锁重组是Geth中的一个术语。它意味着当一个不同的(叉子)链被接受为规范链时的事件--因此,区块链达成共识,一些已经被挖掘的块被丢弃。

因此,如果链重组,“丢失”块中的所有事务实际上都丢失了。就像交易从未发生过一样。因此,在您的示例中,sum变成了0,而event从未被触发。

但是,这并不意味着相同的事务可能不会包含在不同的块中--可能是在新规范链的一部分的块中。因此,您的事务可能已经在一个被认为“有效”的块中执行。

您可以在这里阅读更多关于链重组的内容(及其链接):https://ethereum.stackexchange.com/a/19393/31933

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

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

复制
相关文章

相似问题

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