【发布时间】:2018-10-10 17:17:35
【问题描述】:
我想知道如何准确计算交易中使用的气体量。
在 Remix 中,我使用了第一个帐户并在我的智能合约中调用了一个方法,其中有 2 个参数,值为“p1”的字符串和值为 101 的 uint。
交易成本为 198996 gas,执行成本为 176892 gas
我使用了第二个帐户并使用相同的参数调用相同的方法 {string with value "p1" and uint with value 101} 但交易成本为 145032 gas,执行成本为 122928
我的问题是:消耗的气体总量如何不同?尽管我使用了相同的输入负载(相同的字符串长度和相同的 uint 值)?如果它们传递相同的参数和相同的方法但成本不同,我如何计算网络中每个节点的成本?
如果网络中的 2 个节点使用相同的参数调用相同的方法,假设两个节点支付相同数量的气体,我是这样写的吗?如果不是,我如何分析每个节点与智能合约交互需要多少 gas。
谢谢
【问题讨论】:
-
我注意到第一次调用会花费更多,而下一次调用会花费更少,在第一次调用中是否有任何额外的费用我必须考虑它?如果是,哪个节点会有它??
标签: blockchain solidity smartcontracts