Ясно ли, что за каждый перевод "эфира" с использованием "адрес.перевод(сумма)" сколько нужно заплатить "комиссию"?

Ясно ли, что за каждый «эфирный» перевод с использованием «адрес.перевод(сумма)», сколько «комиссии» нужно заплатить? Я имею в виду, сколько стоит etherперевод address.transfer(amount)? Это фиксированная стоимость этой комиссии за транзакцию? И есть ли feeразница с gas priceтранзакцией? Здесь упоминается, что

«Только небольшое количество газа отправлено (21000 газа)».

feeОзначает ли это, что транзакция 21000 wei?

Ответы (1)

address.transferбудет использовать около 9000 газа и установить лимит газа 2300 газа. Это означает, что при переносе на другой контракт для выполнения кода в целевом контракте доступно только 2300 газа.

21000 тысяч — это базовая стоимость транзакции, инициированной пользовательскими учетными записями (UOA), переводящей эфир из UOA в другую UOA стоимостью 21000 и в контракт, базовая стоимость которого также составляет 21000 плюс стоимость выполнения кода контракта.

address.transferэто вызов сообщения внутри транзакции, поэтому, если вы выполняете функцию, содержащую address.transferвас, вы заплатите 21000 газа плюс 9000 газа (приблизительно).

Надеюсь это поможет

Спасибо, когда вы говорите " 21000 gas plus 9000 gas", это означает 21000 wei plus 9000 wei? Кстати, есть ли ссылка на эту стоимость в solidity.readthedocs.io ? Спасибо
Газ — это мера вычислительных затрат, вам нужно умножить его на цену газа, чтобы получить значение эфира. В настоящее время цена газа (она меняется) составляет 2 100 000 000 вэй, поэтому 21 000 газа стоят 21 000 * 2 100 000 000 = 0,00004 eth или 0,022 доллара США. Смотрите это . Информацию о стоимости газа можно найти в желтой бумаге , приложение G, стр. 25. Значение 9000 основано на опыте, у меня был тот же вопрос, что и у вас, некоторое время назад, и я запустил некоторый код для оценки стоимости газа, address.tranferи в итоге я с 9000 как хорошая оценка.
Спасибо, а где написано " Std Cost for Transfer" (вверху слева) значит ли это, что за каждый раз, когда мы отправляем с его etherпомощью address.transfer(amount)стоит $0.042? Спасибо
Нет, отправка эфира обычно всегда будет стоить 21000 газа, цена зависит от цены на газ, а цена на газ меняется в зависимости от статуса сети. Кроме того, когда вы отправляете эфир из своего кошелька, вы не делаете address.transfer(amount). address.transfer(amount)это метод, используемый для отправки эфира из контракта на учетные записи пользователей или другие контракты. Если вы выполняете контракт, использующий этот метод, вы будете платить базовую стоимость любой транзакции (21000 газа) плюс газ, потраченный на выполнение кода. Опять же, общая стоимость будет равна использованному газу, умноженному на цену газа. надеюсь это понятно
Я понимаю цель 21000. Не могли бы вы сообщить мне, какова цель 9000 gas? Спасибо