区块链 > 技术 > 正文

以太坊1.x的同步原子可组合编程技术

区块链数字货币板块文章「以太坊1.x的同步原子可组合编程技术」,本文约有472个文字,大小约为3KB,预计阅读时间2分钟请您欣赏。樱花区块链门户资讯网荟萃众多优秀文章精选,如果想要浏览更多相关区块链数字货币,可以关注本文结尾推荐的优秀文章内容。本站区块链资讯虽然不乏优秀之作,但仅为大家参考使用,希望能对关注区块链的人有所帮助。

介绍

应用程序开发人员需要能够在以太坊2平台上创建在不同执行环境中具有不同分片合约的程序。应用程序开发人员需要能够使用他们习惯于与以太坊1平台一起使用的同步原子可组合编程技术。这篇文章提出了一种可以做到这一点的技术。

例如在下图中,使用跨分片调用来获取oracle的值。如果返回的值低于一定数量,则使用“跨分片”调用来购买商品。

以太坊1.x的同步原子可组合编程技术
「事务」

这种跨分片交易技术依赖于添加到执行环境(EE)中的以下功能:

· 添加到交易收据中的系统事件消息,可以通过信标链交叉链接从其他分片上的其他EE引用。在EE中,当作为事务目标的函数调用结束时,EE会生成系统事件消息。系统事件消息与合约代码可能产生的应用程序事件消息不同。合约代码不能产生伪造系统事件消息的事件。

· 实时参数检查:当合约代码调用进行跨分片函数调用时,请检查实际分片,EE,合约,函数和参数是否与预期被调用的那些相匹配。

· 合约可锁定性:部署合约时,需要将其指定为可以锁定(可锁定)或不能锁定(不可锁定)。执行交易细分时,任何具有状态更新的合约都必须被锁定。如果将合约部署为不可锁定,则无法将其锁定,并且事务将失败。

· 临时状态存储和合约锁定:当合约作为跨分片事务的一部分进行更新时,其更新状态存储在临时存储中,并且合约被锁定。如果提交了跨分片事务,则临时状态将替换合约状态并且合约将被解锁。如果忽略交跨分片事务,则临时状态将被丢弃,合约将被解锁。

· 新的事务类型:EE需要支持本建议后面描述的事务类型。

示例

理解这项技术的最好方法是通过一个例子。想象一下下面显示的调用图。下面写入(没有更新)的段事务是读取状态并返回值的函数调用。下面写入(更新)的段事务是写入状态并返回值的函数调用。


以太坊1.x的同步原子可组合编程技术
「事务」

以上便是樱花区块链给大家分享的关于「以太坊1.x的同步原子可组合编程技术」http://www.0797jjw.cn/qkljs/jishu_26439.html的相关信息了,希望能帮助到大家,更多区块链相关内容,敬请关注樱花区块链!

猜你喜欢

全球稳定币与金融稳定

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

原文地址: