回到大白的那笔交易上,大白总共花费的 Gas 数量是 24876,其中包含了 21000 的固定消耗数量,以及备注消耗的 Gas 数量 3876。备注需要消耗多少数量的 Gas,和输入的内容长度有关,内容越多,需要消耗的 Gas 数量也越多。 如果你仔细观察大白的那张转账截图,你会发现,大白花费的 Gas 数量 24876 后面有个括号,里面是 41.46%。这个百分比是什么意思呢?如果你再仔细看截图,你会发现,上面还有一个 Gas Limit,数值是 60000,而且它的 41.46% 正好是 24876。 Gas Limit,是指这笔操作消耗的 Gas 数量上限,这个上限值你可以自己设置。比如,大白设置的是 60000,但实际操作中并没有达到这个上限,只用了 41.46%。一般的钱包都会默认帮你设置这个上限值,对我们普通用户而言,普通转账时这个上限值也不用去考虑。 以太坊网络设置这个上限值,是以防万一,如果碰到恶意的智能合约,该合约执行将消耗无限的燃料,这样会导致交易方的 ETH 余额全部消耗(恶意的智能合约有可能是程序 Bug,如合约执行陷入一个死循环)。 Gas Limit 如果设置过低,比如设置为 10000,任何一笔转账需要的 Gas 数量至少 21000,远远超过你设置的 Gas Limit,就会导致转账失败。也就是说,Gas Limit 会影响一笔交易是否能成功。 来源 :白话区块链 (责任编辑:admin) |