Solidity
交易執行時可以增加gas限制嗎?
假設我們有一個呼叫合約方法的交易,該合約方法的 gas 上限為 200,000。當交易在挖礦時,被呼叫的合約發現它在完成之前就會耗盡gas(由於某些原因,我們無法預先估計所需的gas)。我們在合約和
tx.origin
賬戶中都有足夠的可用 eth。有沒有辦法使用合約或 EOA 餘額來重新平衡限制並完成執行?
已執行的合約方法無法更改 gas limit,tx 發起者必須用另一個 tx 替換該 tx 才能更改它。
更改一個 tx 必須通過發送另一個具有相同隨機數但使用更高 gas 價格的 tx 來完成。如果您設法在前一個被探勘之前發送它,很可能(但不能保證)礦工會首先探勘它,導致具有相同 nocne 的舊 tx 從記憶體池中刪除。