@Override
  protected void haltMiner(final PoWBlockMiner miner) {
    miner.cancel();
    miner.getHashesPerSecond().ifPresent(val -> cachedHashesPerSecond = Optional.of(val));
  }
Responsible for determining when a block mining operation should be started/stopped, then
creating an appropriate miner and starting it running in a thread.
ethereum/blockcreation/src/main/java/org/hyperledger/besu/ethereum/blockcreation/PoWMiningCoordinator.java