1.区块链上的多个用户可以共同参与制定智能合约,合约的协议中明确了双方的权利和义务,当双方同意合约的内容和目标后,通过开发人员将这些协议转换为代码,代码中包含会触发合约自动执行的条件。
2.当编码完成后,智能合约就会被上传到区块链上,即全网验证节点都会接收这份合约信息系统開发180-383I-9724。
//队列溢出后的处理方式-默认throw new RejectedExecutionException();
private final RejectedExecutionHandler rejectedExecutionHandler;
//最后一次执行任务的
private long lastExecutionTime;
@SuppressWarnings({ "FieldMayBeFinal", "unused" })
//当前状态-默认未启动
private volatile int state = ST_NOT_STARTED;
private volatile long gracefulShutdownQuietPeriod;
private volatile long gracefulShutdownTimeout;
private long gracefulShutdownStartTime;
private final Promise<?> terminationFuture = new DefaultPromise(GlobalEventExecutor.INSTANCE);
在此阶段,合约双方都必须满足合约的所有要求,支付费用或发送资产以进一步执行此外,还要冻结在智能合约中定义的钱包地址的转账,直到满足所有约定好的前提条件为止。
3.当智能合约执行时,会定期检查是否存在相关事件和触发条件,满足条件的事件将会推送到待验证的队列中。然后,这些交易事件将通过共识协议进行验证。
4.取消冻结资产并确认所有交易后,智能合约即被视为最终确定。成功执行的合约将移出区块。而未执行的合约则继续等待下一轮处理,直至成功执行。