public void startAllMiners() {
   for (INetworkMiner miner : allMiners.values()) {
     miner.start();
     try {
       Thread.sleep(100);
     } catch (InterruptedException e) {
       e.printStackTrace();
     }
   }
 }
 @Override
 public void onTaskModified(TaskElement task, int modify_type) {
   if (allMiners.containsKey(task)) {
     INetworkMiner miner = allMiners.get(task);
     if (miner.isAlive()) {
       miner.stop();
       try {
         Thread.sleep(200);
       } catch (InterruptedException e) {
         e.printStackTrace();
       }
       miner.start();
     }
   }
 }
 public void stopAllMiners() {
   for (INetworkMiner miner : allMiners.values()) {
     miner.stop();
   }
 }
 public void removeMiner(INetworkMiner miner) {
   if (allMiners.containsKey(miner.getTask())) {
     allMiners.get(miner.getTask()).stop();
     allMiners.remove(miner.getTask());
   }
 }