#
luxiaotao1123
2020-08-06 462e9bc9200e077ff8d1e720275ec4c2f98af710
#
1个文件已修改
1个文件已添加
62 ■■■■■ 已修改文件
src/main/java/com/zy/core/ServerBootstrap.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/thread/BarcodeThread.java 53 ●●●●● 补丁 | 查看 | 原始文档 | 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() {
    }
}