From c1ef2d1fc4c0dae2bc8452924dcd77a0ff3a1ef5 Mon Sep 17 00:00:00 2001 From: cpT <1@123> Date: 星期四, 19 六月 2025 15:02:52 +0800 Subject: [PATCH] #改造 --- src/main/java/com/zy/core/cache/TaskProtocolCache.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/core/cache/TaskProtocolCache.java b/src/main/java/com/zy/core/cache/TaskProtocolCache.java index 972348c..f2f01c6 100644 --- a/src/main/java/com/zy/core/cache/TaskProtocolCache.java +++ b/src/main/java/com/zy/core/cache/TaskProtocolCache.java @@ -137,5 +137,50 @@ // lock.readLock().unlock(); // 閲婃斁璇婚攣 } } + /** + * 鏌ヨ鏄惁鏈夊彲鎵ц浠诲姟 + */ + public TaskProtocol getNowPosRunTask(Long targetPosition) { +// lock.readLock().lock(); // 鍔犺閿� + try { + for (TaskProtocol task : cache.values()) { + long runPos = Math.abs(task.getTargetPosition() - targetPosition); + if (runPos<50) { + return task; + } + } + return null; // 杩斿洖鍓湰 + } finally { +// lock.readLock().unlock(); // 閲婃斁璇婚攣 + } + } + + + /** + * 鏌ヨ鏄惁鏈夊彲鎵ц浠诲姟 + */ + public TaskProtocol getNowPosRunTask2() { +// lock.readLock().lock(); // 鍔犺閿� + try { + for (TaskProtocol task : cache.values()) { + if (task.getTaskStatus()==1) { + return task; + } + } + for (TaskProtocol task : cache.values()) { + if (task.getTaskStatus()==2) { + return task; + } + } + for (TaskProtocol task : cache.values()) { + if (task.getTaskStatus()==3) { + return task; + } + } + return null; // 杩斿洖鍓湰 + } finally { +// lock.readLock().unlock(); // 閲婃斁璇婚攣 + } + } } -- Gitblit v1.9.1