src/main/java/com/zy/core/ServerBootstrap.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/core/thread/BarcodeThread.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/core/ServerBootstrap.java
@@ -4,6 +4,7 @@ import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.SlaveType; import com.zy.core.properties.SlaveProperties; import com.zy.core.thread.BarcodeThread; import com.zy.core.thread.CrnThread; import com.zy.core.thread.DevpThread; import lombok.extern.slf4j.Slf4j; @@ -63,13 +64,19 @@ SlaveConnection.put(SlaveType.Crn, crn.getId(), crnThread); } // 初始化站点线程 // 初始化输送线线程 for (Slave devp : slaveProperties.getDevp()) { DevpThread devpThread = new DevpThread(devp); new Thread(devpThread).start(); SlaveConnection.put(SlaveType.Devp, devp.getId(), devpThread); } // 初始化条码扫描仪线程 for (Slave barcode : slaveProperties.getBarcode()) { BarcodeThread barcodeThread = new BarcodeThread(barcode); new Thread(barcodeThread).start(); SlaveConnection.put(SlaveType.Barcode, barcode.getId(), barcodeThread); } } src/main/java/com/zy/core/thread/BarcodeThread.java
New file @@ -0,0 +1,53 @@ package com.zy.core.thread; import com.zy.core.Slave; import com.zy.core.ThreadHandler; import com.zy.core.cache.MessageQueue; import com.zy.core.enums.SlaveType; import com.zy.core.model.Task; import lombok.Data; import lombok.extern.slf4j.Slf4j; /** * 条码扫描仪线程 * Created by vincent on 2020/8/4 */ @Data @Slf4j public class BarcodeThread implements Runnable, ThreadHandler { private Slave slave; public BarcodeThread(Slave slave) { this.slave = slave; connect(); } @Override @SuppressWarnings("InfiniteLoopStatement") public void run() { while (true) { try { Task task = MessageQueue.poll(SlaveType.Barcode, slave.getId()); if (task != null) { System.out.println("任务"+task.getId()); } Thread.sleep(3000); } catch (Exception e) { e.printStackTrace(); } } } @Override public boolean connect() { return false; } @Override public void close() { } }