From 87c4efe93e6fe31a9c989b4aa5cc0c8f559b845d Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 31 三月 2023 16:50:47 +0800
Subject: [PATCH] 提升机代码,四向穿梭车线程优化

---
 src/main/java/com/zy/core/cache/MessageQueue.java |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/core/cache/MessageQueue.java b/src/main/java/com/zy/core/cache/MessageQueue.java
index bc17bec..cad0ffb 100644
--- a/src/main/java/com/zy/core/cache/MessageQueue.java
+++ b/src/main/java/com/zy/core/cache/MessageQueue.java
@@ -31,6 +31,8 @@
     private static final Map<Integer, ConcurrentLinkedQueue<Task>> CAR_EXCHANGE = new ConcurrentHashMap<>();
     //鍥涘悜绌挎杞q浜ゆ崲鏈�
     private static final Map<Integer, ConcurrentLinkedQueue<Task>> SHUTTLE_EXCHANGE = new ConcurrentHashMap<>();
+    //鎻愬崌鏈簃q浜ゆ崲鏈�
+    private static final Map<Integer, ConcurrentLinkedQueue<Task>> LIFT_EXCHANGE = new ConcurrentHashMap<>();
 
     /**
      * mq 浜ゆ崲鏈哄垵濮嬪寲
@@ -61,6 +63,9 @@
             case Shuttle:
                 SHUTTLE_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
                 break;
+            case Lift:
+                LIFT_EXCHANGE.put(slave.getId(), new ConcurrentLinkedQueue<>());
+                break;
             default:
                 break;
         }
@@ -88,6 +93,8 @@
                 return CAR_EXCHANGE.get(id).offer(task);
             case Shuttle:
                 return SHUTTLE_EXCHANGE.get(id).offer(task);
+            case Lift:
+                return LIFT_EXCHANGE.get(id).offer(task);
             default:
                 return false;
         }
@@ -115,6 +122,8 @@
                 return CAR_EXCHANGE.get(id).poll();
             case Shuttle:
                 return SHUTTLE_EXCHANGE.get(id).poll();
+            case Lift:
+                return LIFT_EXCHANGE.get(id).poll();
             default:
                 return null;
         }
@@ -141,6 +150,8 @@
                 return CAR_EXCHANGE.get(id).peek();
             case Shuttle:
                 return SHUTTLE_EXCHANGE.get(id).peek();
+            case Lift:
+                return LIFT_EXCHANGE.get(id).peek();
             default:
                 return null;
         }
@@ -172,6 +183,9 @@
             case Shuttle:
                 SHUTTLE_EXCHANGE.get(id).clear();
                 break;
+            case Lift:
+                LIFT_EXCHANGE.get(id).clear();
+                break;
             default:
                 break;
         }

--
Gitblit v1.9.1