Solidity

幾乎所有功能的無限氣體估計。正常嗎?

  • March 10, 2022

部署合約測試網時,報gas limit超過:3000000 怎麼解決?

Github 連結到智能合約。

對幾乎所有函式進行無限氣體估計是否正常?

在此處輸入圖像描述

我發現在我的大多數方法中都是這種情況,尤其是那些帶有循環的方法,例如在遍歷數組以查找要刪除的項目時。

我不知道你的應用程序,但我看到一個“十進制()”,具有無限氣體估計。如果它類似於 ERC20 中的相同功能,則不合理。

可能是您取消引用在部署時未知的其他 SC,或者您使用動態數組、包含的字元串,或者您的 for 循環具有無限的最大迭代次數。在這些情況下,估計是不充分的並且失敗了。

您應該將此結果與您在 ganache 或 JavaScript VM 本地測試網上開發時執行的工作應用程序的結果進行比較。如果氣體總量接近 ropsten 或其他的限制,請優化您的程式碼,一切都會好的。

引用自:https://ethereum.stackexchange.com/questions/38359