ctu agv callback接口返回处理逻辑
This commit is contained in:
@@ -6,7 +6,11 @@ import com.ruoyi.schedule.plcRead.ssj.domain.PlcConnectInfo;
|
||||
import com.ruoyi.schedule.plcRead.ssj.PlcRead;
|
||||
import com.ruoyi.schedule.plcRead.ssj.domain.CustomThread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.bs.BsInSsjThread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.bs.BsOutSsjThread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.bs.BsPickSsjTread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.js.JsInSsjThread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.js.JsOutSsjThread;
|
||||
import com.ruoyi.schedule.scheduleTask.ssj.js.JsPickSsjTread;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@@ -23,6 +27,10 @@ public class ScheduleThread {
|
||||
|
||||
public CustomThread bsInSsjThread;
|
||||
public CustomThread jsInSsjThread;
|
||||
public CustomThread bsOutSsjThread;
|
||||
public CustomThread jsOutSsjThread;
|
||||
public CustomThread bsPickSsjThread;
|
||||
public CustomThread jsPickSsjThread;
|
||||
|
||||
/**
|
||||
* 项目初始化启动
|
||||
@@ -39,6 +47,7 @@ public class ScheduleThread {
|
||||
list.put(deviceSsj.getDeviceCode(),deviceSsj);
|
||||
}
|
||||
|
||||
//plc读取线程
|
||||
PlcRead plcRead = new PlcRead(list,ssjPlcConnectInfo);
|
||||
Thread plcReadThread = new Thread(plcRead);
|
||||
customThread = new CustomThread(plcReadThread, plcRead);
|
||||
@@ -48,6 +57,14 @@ public class ScheduleThread {
|
||||
bsInSsjThread = new CustomThread(new Thread(bsInSsjThread1),bsInSsjThread1);
|
||||
JsInSsjThread jsInSsjThread1 = new JsInSsjThread();
|
||||
jsInSsjThread = new CustomThread(new Thread(jsInSsjThread1),bsInSsjThread1);
|
||||
BsOutSsjThread bsOutSsjThread1 = new BsOutSsjThread();
|
||||
bsOutSsjThread = new CustomThread(new Thread(bsOutSsjThread1),bsOutSsjThread1);
|
||||
JsOutSsjThread jsOutSsjThread1 = new JsOutSsjThread();
|
||||
jsOutSsjThread = new CustomThread(new Thread(jsOutSsjThread1),jsOutSsjThread1);
|
||||
BsPickSsjTread bsPickSsjTread1 = new BsPickSsjTread();
|
||||
bsPickSsjThread = new CustomThread(new Thread(bsPickSsjTread1),bsPickSsjTread1);
|
||||
JsPickSsjTread jsPickSsjTread1 = new JsPickSsjTread();
|
||||
jsPickSsjThread = new CustomThread(new Thread(jsPickSsjTread1),jsPickSsjTread1);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -58,8 +75,18 @@ public class ScheduleThread {
|
||||
}
|
||||
|
||||
public void startAllThread2() {
|
||||
//臂式入库线程调度
|
||||
bsInSsjThread.getThread().start();
|
||||
//剪式入库线程调度
|
||||
jsInSsjThread.getThread().start();
|
||||
//臂式出库线程调度
|
||||
bsOutSsjThread.getThread().start();
|
||||
//剪式出库线程调度
|
||||
jsOutSsjThread.getThread().start();
|
||||
//臂式出库到位线程调度-wms电子屏交互
|
||||
bsPickSsjThread.getThread().start();
|
||||
//剪上出库到位线程调度-wms电子屏交互
|
||||
jsPickSsjThread.getThread().start();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -69,18 +96,20 @@ public class ScheduleThread {
|
||||
stopThread(customThread);
|
||||
}
|
||||
|
||||
public void stopAllThread2() {
|
||||
stopThread(bsInSsjThread);
|
||||
stopThread(jsInSsjThread);
|
||||
stopThread(bsOutSsjThread);
|
||||
stopThread(jsOutSsjThread);
|
||||
stopThread(bsPickSsjThread);
|
||||
stopThread(jsPickSsjThread);
|
||||
}
|
||||
|
||||
/**
|
||||
* 停止线程
|
||||
*/
|
||||
private void stopThread(CustomThread customThread) {
|
||||
if (customThread.getThread() != null && customThread.getThread().isAlive()) {
|
||||
((PlcRead)customThread.getRunnable()).stopReading();
|
||||
try {
|
||||
customThread.getThread().join(); // 等待线程结束
|
||||
} catch (InterruptedException e) {
|
||||
Thread.currentThread().interrupt();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user