Entonces, si entiendo esto correctamente, view
la función solo lee datos de ethereum y no muta ningún estado y la pure
función ni siquiera lee datos y están destinados a casos comoreturn 1+1;
Si este es el caso, ¿se abusaría de ellos ya que no cuestan gasolina? ¿Podría simplemente usarlos para el cálculo gratuito? ¿Qué sucede si tengo un bucle infinito en una vista o función pura?
TLDR : No lo harán.
Solo para agregar a la buena respuesta de @Shawn.
Sí, puedes abusar de ellos. Pero como los cálculos pure
y view
se realizan solo en su propio nodo, solo dañaría su propio nodo. No dañaría la red Ethereum de ninguna manera. Si llama a la(s) función(es) lo suficiente, incluso podría bloquear su nodo, pero aún así no dañaría la red de ninguna manera.
pure
y view
las funciones solo son "gratuitas" cuando las llama externamente, ya que llama a esa función por sí misma y ejecuta el cálculo en su nodo. Entonces, si tenía una función que devolvía "1+1", sí, puede llamar a esa función de vista individual tantas veces como quiera de forma gratuita, incluso sin crear una transacción.
Sin embargo, si usa una función view
o pure
dentro de una función interna que SÍ cuesta gasolina, se le cobrarán esos cálculos como de costumbre.
noooooooob
Lauri Peltonen
noooooooob
Lauri Peltonen
noooooooob
Lauri Peltonen
noooooooob
Lauri Peltonen