矿工的一部分工作是安排一些智能合约的执行吗?

Is part of the miner work to schedulle some smart contract executions?

我只是想开始了解以太坊和智能合约,我了解到智能合约的执行发生在交易块的验证过程中。我说得对吗?

如果是这样,如何执行具有到期日期或将来必须发生的某种执行的智能合约?矿工的一部分工作是安排一些智能合约的执行吗?

the execution of an smart contract happens during the process of a transaction block's validation

以及区块挖掘期间。但是,是的,PoW 验证器 运行 交易 - 只是这次使用正在验证的块的参数(例如 block.timestamp)来检查它们是否得到相同的结果(在这种情况下状态变化 - 存储,事件,...) 作为矿工。


示例:

function foo() public {
    require(block.timestamp == 1650000000);
}
  1. 一个矿工产生了一个时间戳为 1650000000 的区块,其中包含一个成功执行 foo() 函数的交易。
  2. 一个验证者在时间 1650000001 验证了这个块,但在他们的 EVM 中以模拟时间 1650000000 执行它,并且交易在他们结束时也成功了。