本次主要是解决了几个 bug ,然后添加了两个锦上添花的功能。
扫描频率不再受限制了,只要大于 1 毫秒即可
添加了最大扫描块高,当扫描到这个块高的时候,就会自动停止本任务
添加了获取当前扫描到的最大块高的功能
看下面代码中的有注释的那一行
EventThreadPool.init(1); MagicianBlockchainScan.create() .setRpcUrl( EthRpcInit.create() .addRpcUrl("https://data-seed-prebsc-1-s1.binance.org:8545") ) .setScanPeriod(5000) .setBeginBlockNumber(BigInteger.valueOf(24318610)) .setEndBlockNumber(BigInteger.valueOf(24318680)) // 扫描到哪个块高就停止这个任务(不设置,或者设置为 0 ,代表不限制) .addEthMonitorEvent(new EventOne()) .start();
看下面代码中的有注释的那一行
// 将对象拿到 MagicianBlockchainScan blockChainScan = MagicianBlockchainScan.create() .setRpcUrl( EthRpcInit.create() .addRpcUrl("https://data-seed-prebsc-1-s1.binance.org:8545") ) .setScanPeriod(5000) .setBeginBlockNumber(BigInteger.valueOf(24318610)) .addEthMonitorEvent(new EventOne()) blockChainScan.start(); // 调用这个方法可以获取当前任务已经扫描到的最大块高 // 有一定的误差,因为在你获取的这一瞬间,扫描任务可能又扫描到好几个新块高了 blockChainScan.getCurrentBlockHeight();
除此之外,还解决了Magician-ContractsTools设置 chainId 后报错的 bug