En mi transacción: gasPrecio: 210000
blockHash: "0x69bd71736f2a5d2c83919a0de81a7de0b6b690bb6bdda3acff254d5c68f634bc",
blockNumber: 3178,
from: "0xc8caa71c16299b40b8579742a27ee53162886040",
gas: 2100000000,
gasPrice: 210000,
Y el recibo: gasUsado: 72769
blockHash: "0x69bd71736f2a5d2c83919a0de81a7de0b6b690bb6bdda3acff254d5c68f634bc",
blockNumber: 3178,
contractAddress: null,
cumulativeGasUsed: 72769,
from: "0xc8caa71c16299b40b8579742a27ee53162886040",
gasUsed: 72769,
¿Eso significa que mi gas total consumido = 72769 x 210000 = 15281490000 o 15GWei?
¿Puedo asumir con seguridad que gasUsed seguirá siendo el mismo si la condición de ejecución (es decir, los parámetros de entrada) sigue siendo la misma? ¿Incluso cuando muevo mi código del nodo de prueba al ETH principal?
¿Puedo asumir con seguridad que gasUsed seguirá siendo el mismo si la condición de ejecución
No. El gas puede variar incluso llamando a la misma función. Consulte ¿Por qué el costo de transacción para la misma función difiere aunque el contenido de la función sea el mismo? y esto
También gasPrice
cambia dinámicamente. Por lo tanto, no siempre puede enviar el precio del gas estático (210000). Enviar menos gas puede resultar en una falla de tx y enviar menos precio del gas puede tomar mucho tiempo para ser minado.
La mejor opción es usar estimateGas
para verificar el gas de sus transacciones y eth.gasPrice
estimar el gas.
Puedes aumentar la gasolina a más de lo que estimaste porque se rechaza la gasolina extra.
sk
Prashant Prabhakar Singh
72769
pero en llamadas posteriores esto puede variar.sk
Alex Papageorgiou
gasUsed
se refiere a un parámetro completamente diferente agasPrice
. Si biengasPrice
es el precio en wei que pagará al minero por cada unidad de gas consumida,gasUsed
indica cuántas unidades de gas se consumieron realmente en la transacción. Probablemente se esté confundiendogasPrice
congasLimit
, que indica el consumo de gas máximo permitido en su transacción.sk
Prashant Prabhakar Singh