Solidity
Metamask 如何估算氣體限制?
我目前正在為乙太坊開發一個 D-app,可與 Metamask 擴展一起使用。我使用 truffle 框架和testrpc在本地測試我的應用程序。
當使用者必須進行交易以執行智能合約的功能時,Metamask 視窗中交易的Gas Limit始終已設置為(可變)一定數量。由於這個金額對於我的大多數交易來說已經足夠了,除了一些我必須手動設置gas限制的交易之外,我想知道這個gas limit的金額是如何計算/估計的。
我在哪裡可以找到關於這個問題的一些好的資訊?
任何幫助將不勝感激
我相信 MetaMask 只是呼叫
eth_estimateGas
它正在與之交談的任何乙太坊節點。的實現eth_estimateGas
通常是模擬交易並測量實際使用的氣體。如果合約的 gas 使用量取決於區塊編號、區塊雜湊或其他可能在估計時間和實際交易時間之間發生變化的數據,那麼在交易被探勘時所需的實際 gas 量可能會有所不同.