Contract-Development
更新儲存的成本與添加儲存的成本是否不同?
這些有單獨的費用嗎?
sstore(1, 10) # first time adding a value to storage with this key sstore(1, 20) # changing the value in storage.
我查找了 gas 成本/操作碼列表,我能找到的唯一一個(https://docs.google.com/spreadsheets/d/1m89CVujrQe5LAFJ8-YAUCcNK950dUzMQPMJBxRtGCqs/edit#gid=0)是一歲的。似乎說修改儲存更便宜,但我不確定這些值是否已過時。
是的,使用儲存有不同的 gas 成本:
20,000 gas 當一個值從零設置為非零時;寫入現有儲存或將值設置為零時需要 5,000 個 gas;當非零值設置為零時,返還15,000 的 gas 。
黃皮書是基礎資料。
EIP-2200有進一步的解釋。