OPCODE получает лимит GASLIMIT
газа блока. Может встроенная сборка,
uint gasLimit;
assembly {
gasLimit := gaslimit
}
получить лимит газа?
contract B {
function getGasLimit() returns (uint) {
uint gasLimit;
assembly {
gasLimit := gaslimit
}
return gasLimit;
}
}
Использование https://ethereum.github.io/browser-solidity/ с установленным лимитом газа на 3000000 getGasLimit()
возвращает 6000000.
Почему он возвращает вдвое больше лимита газа?
Эта путаница возникла из-за двусмысленности термина «лимит газа», который в твердости браузера означал газ за транзакцию , но OP предположил, что имел в виду лимит газа на блок . Путаница усугублялась тем фактом, что лимит блочного газа в виртуальной машине браузера по умолчанию вдвое превышает лимит транзакционного газа.
Я отправил PR, который был объединен, и теперь на этикетке написано «Лимит транзакционного газа», что, надеюсь, должно быть понятнее.
Тьяден Хесс
диабло
Тьяден Хесс
msg.gas
отправляемые транзакции. Это будет то, что вы поместите вgas limit
поле (минус немного)Тьяден Хесс
эт