From ff3e44c2e691ae1bb523441d59ef03202cf888db Mon Sep 17 00:00:00 2001 From: free will <2647778488@qq.com> Date: Mon, 19 Apr 2021 17:04:57 +0800 Subject: [PATCH 1/3] add class init --- src/main/java/logicface/LogicFace.java | 2 +- src/main/java/logicface/LogicFaceICN.java | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/logicface/LogicFace.java b/src/main/java/logicface/LogicFace.java index 87b1f55..5f904ca 100644 --- a/src/main/java/logicface/LogicFace.java +++ b/src/main/java/logicface/LogicFace.java @@ -23,7 +23,7 @@ public class LogicFace { // 成员变量区 public int logicFaceType; public ITransport transport; // 与logicFace绑定的transport - public LinkService linkService; // 与logicFace绑定的linkService + public LinkService linkService=new LinkService(); // 与logicFace绑定的linkService public LogicFaceCounters logicFaceCounters=new LogicFaceCounters(); // logicFace 流量统计对象 public long expireTime; // 超时时间 ms public boolean state; // true 为 up , false 为down diff --git a/src/main/java/logicface/LogicFaceICN.java b/src/main/java/logicface/LogicFaceICN.java index a43c832..95d79b7 100644 --- a/src/main/java/logicface/LogicFaceICN.java +++ b/src/main/java/logicface/LogicFaceICN.java @@ -12,8 +12,10 @@ import util.ConcurrentHelper; import util.TimeHelper; import java.util.*; +import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.PriorityBlockingQueue; import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; /* * @Author: Wang Feng @@ -25,8 +27,8 @@ import java.util.concurrent.locks.Lock; public class LogicFaceICN extends LogicFace { public Timer timer; // 定时器,在processEvent函数中就被设置成很大的值 public long recentExpireTime; // 最近将要超时的时间戳 - public Map mPit; // PIT表 - public Lock timeoutEventHeapLock; // 锁, mpit 、timeoutEventHeap、recentExpireTime + public Map mPit=new ConcurrentHashMap<>(); // PIT表 + public Lock timeoutEventHeapLock=new ReentrantLock(); // 锁, mpit 、timeoutEventHeap、recentExpireTime // 超时事件堆, 以超时时间排序的最小堆,初始化大小为1000 public PriorityBlockingQueue timeoutEventHeap =new PriorityBlockingQueue(1000,new Comparator(){ @@ -36,7 +38,7 @@ public class LogicFaceICN extends LogicFace { } }); - public Map mFib; + public Map mFib=new ConcurrentHashMap<>(); /** * 通过最长匹配原则查找FIB表,找到合适的兴趣包处理函数 From 93128ccf9b5320ec6f6d763408d0adbc169f9595 Mon Sep 17 00:00:00 2001 From: free will <2647778488@qq.com> Date: Mon, 19 Apr 2021 17:05:50 +0800 Subject: [PATCH 2/3] add class init --- src/main/java/logicface/Transport.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/logicface/Transport.java b/src/main/java/logicface/Transport.java index b0441b6..3a89bd7 100644 --- a/src/main/java/logicface/Transport.java +++ b/src/main/java/logicface/Transport.java @@ -17,7 +17,7 @@ public class Transport { public String localUri; public String remoteUri; - public LinkService linkService; + public LinkService linkService=new LinkService(); // TODO 虽然第一个版本可能用不到linkService分包与合包功能, // 但以后可能需要客户端也能直接发出用以太网封装的MIN网络包,所以还是留着linkService From 2b97cb56e597e0855371120b3bd85a42915c5ab9 Mon Sep 17 00:00:00 2001 From: free will <2647778488@qq.com> Date: Mon, 19 Apr 2021 17:18:36 +0800 Subject: [PATCH 3/3] add function getTimestampMS --- src/main/java/util/TimeHelper.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/util/TimeHelper.java b/src/main/java/util/TimeHelper.java index 910df32..08e39ba 100644 --- a/src/main/java/util/TimeHelper.java +++ b/src/main/java/util/TimeHelper.java @@ -8,8 +8,7 @@ package util; * @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室 */ public class TimeHelper { - // TODO: 后面需要实现这个函数。 public static long getTimestampMS(){ - return 10000; + return System.currentTimeMillis(); } }