修复延迟基线bug

Timer改成线程池,修复系统时间改变导致定时任务无法执行的bug
This commit is contained in:
2026-09-29 20:10:57 +08:00
parent 100fad7d18
commit 862b860020
13 changed files with 260 additions and 202 deletions
@@ -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);
}
/*