以太坊中的单个钱包有交易队列吗?
问题描述:
我已经执行了非常低的天然气价格的合同方法 - 1 gwei(交易A)。以太坊中的单个钱包有交易队列吗?
之后,我从同一个帐户(交易B)发送一些eth几个钱包。
因此,交易状态A是pending
约12小时,直到它被开采,因为天然气价格。我发现交易B停滞不前,直到交易A被挖掘(它们也是pending
)。
所有交易都是通过MyEthereWallet从同一个钱包发送的。
据我所知,交易是绝对独立执行的。那么,为什么交易B只在A后开采?或者每个钱包都有一个全局事务队列,事务是按照它们到系统的顺序进行挖掘的?
答
我找到了答案here。如果不久,是的,有一种队列。事务按照它们发布到以太网网络的顺序执行。
更多一点细节。每个帐户都有一个名为nonce
的属性。它包含从账户中发出的交易数量。
下一步。每个帐户发送的交易都有几个属性。其中之一是发送交易的账户nonce
。
执行交易之前检查有效性 - 他们应该有有效的签名,足够的天然气和有效的nonce
- 它应该等于发件人的帐户当前nonce
。
检查有效性后,交易正在执行。成功执行交易账户的随机数后递增。
例如,我们的帐户的nonce
是100.我们发布两项交易与nonce
100和101,直到第一个事务完成和帐户的nonce
递增与nonce
101的第二次交易是无效的(并成为101)。