Transactions
乙太坊區塊鏈的狀態是否隨著每筆交易或每個區塊而改變?
假設我們有兩個交易 A 和 B,由礦工放入一個區塊(先是 A,然後是 B)。兩個交易會以前一個區塊的狀態執行,還是交易 B 會以執行 A 的狀態執行?
乙太坊是單執行緒的。任何合約中的任何操作碼都是按順序執行的。您的問題的答案是事務 B 根據事務 A 應用的更改以狀態執行。
以這種方式建構 EVM (v1) 的原因是,否則並發狀態更新將導致不確定的行為。你需要分片來解決這個問題,而這將出現在乙太坊 2.0 中。
事務 B 以執行 A 所產生的狀態執行。