区块链是一个经济系统
- 计算与存储系统都是稀缺的,区块链的工作需要消耗资源
- 共识、trustless需要矿工的工作,而矿工需要激励
- Transaction的执行有成本(gas),gas费成为矿工的奖励
- ether是这个经济生态系统的通行货币
关心的问题
- 合约执行中的经济成本,即gas问题
- 智能合约实现货币的流通,即转账收款功能
货币转换单位
合约持有ether
- address.balance:合约可以有钱!
- 合约与其他合约或者EOA之间可以转账
- multisig钱包
gas和转账-函数调用的选项
- 转账是与函数调用一起发生的。转账就是函数调用
- 调用时加上调用选项
gas、gasprice、gaslimit的解释-理清区别,搞懂关系
gas、gas fee、gas price
- 实际的gas是完全由执行逻辑决定的,一个固定的逻辑的合约函数执行,gas没有变化
- 有变化的是gas的price,是由交易者发起者在transaction中设定
- gas price由市场定价
- gas fee是gas*gasprice
gaslimit与gasleft()函数
- 交易发起者设定最多消耗多少:gaslimit
- 合约之间调用,调用者可以设定gaslimit
- 区块本身有一个gaslimit
gasleft()是以上因素作为限定,与当前gas消耗一起计算的结果
退款规则
- 剩下没用完的gas会“退款”;
- 如果可用gas耗尽时,会终止交易执行;
- 交易失败时,已经用了的gas不退