forked from KNEMC/KLALB
修复延迟基线bug
Timer改成线程池,修复系统时间改变导致定时任务无法执行的bug
This commit is contained in:
@@ -12,11 +12,10 @@ import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.Timer;
|
||||
import java.util.TimerTask;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
import java.util.concurrent.CopyOnWriteArraySet;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.locks.Condition;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import java.util.function.BiConsumer;
|
||||
@@ -45,11 +44,13 @@ import org.kne.cloud.network.ipv6.PadNHopByHopTLV;
|
||||
import org.kne.cloud.network.ipv6.PostcardEntry;
|
||||
import org.kne.cloud.network.ipv6.RouteItem;
|
||||
import org.kne.cloud.network.klalb.KLALBRemoteLink;
|
||||
import org.kne.cloud.network.klalb.KLALBScheduler;
|
||||
import org.kne.cloud.network.klalb.KLALBUtils;
|
||||
import org.kne.cloud.network.klalb.PerformanceStrategy;
|
||||
import org.kne.cloud.network.klalb.ui.PerformanceStrategyItem;
|
||||
import org.kne.concurrent.HighPerformanceExecutor2;
|
||||
import org.kne.concurrent.TimeoutConcurrentHashMap;
|
||||
import org.kne.io.KNEChannels;
|
||||
import org.pcap4j.packet.IllegalRawDataException;
|
||||
|
||||
import com.google.gson.internal.Pair;
|
||||
@@ -849,8 +850,7 @@ public class SRv6Router {
|
||||
private volatile long backplanePPS=0;
|
||||
private volatile long backplanePPSMax=0;
|
||||
private volatile long prevTime=System.nanoTime();
|
||||
|
||||
private Timer backplaneTimer=new Timer();
|
||||
|
||||
private void updateBackplaneCounter() {
|
||||
long curr=System.nanoTime();
|
||||
long totalTime=timeAdder.getAndReset();
|
||||
@@ -904,13 +904,13 @@ public class SRv6Router {
|
||||
linkTabel.add(inLoopBack); // 添加到链路表
|
||||
this.srhInserter=new SRHInsertNetworkLink(this,networkGroup);
|
||||
linkTabel.add(srhInserter);
|
||||
backplaneTimer.scheduleAtFixedRate(new TimerTask() {
|
||||
KLALBScheduler.getScheduler().scheduleAtFixedRate(new Runnable() {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
updateBackplaneCounter();
|
||||
}
|
||||
}, 100, 100);
|
||||
}, 100, 100, TimeUnit.MILLISECONDS);
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user