Browse Source

线程终端问题

jx-test
修宁 5 months ago
parent
commit
d97b98f795
  1. 2
      servo/src/main/java/com/galaxis/rcs/amr/AmrAgvItem.java
  2. 5
      servo/src/main/java/com/galaxis/rcs/amr/AmrConnectorThread.java

2
servo/src/main/java/com/galaxis/rcs/amr/AmrAgvItem.java

@ -461,7 +461,7 @@ public abstract class AmrAgvItem extends ExecutorItem {
* 停止连接器线程 * 停止连接器线程
*/ */
public void stopConnector() { public void stopConnector() {
connectorThread.stop(); connectorThread.interrupt();
} }
private static final int speed = 1000; private static final int speed = 1000;

5
servo/src/main/java/com/galaxis/rcs/amr/AmrConnectorThread.java

@ -47,6 +47,7 @@ public class AmrConnectorThread extends Thread {
// 计算中的任务 // 计算中的任务
List<AmrDeviceTask> computingTaskList = new ArrayList<>(); List<AmrDeviceTask> computingTaskList = new ArrayList<>();
while (running.get()) { while (running.get()) {
Thread.sleep(1);
if (paused.get()) { if (paused.get()) {
synchronized (pauseLock) { synchronized (pauseLock) {
while (paused.get()) { while (paused.get()) {
@ -124,9 +125,9 @@ public class AmrConnectorThread extends Thread {
} }
} catch (InterruptedException e) { } catch (InterruptedException e) {
System.out.println("Connector thread interrupted for executor: " + this.ptrAgvItem.getId()); log.error("Connector thread interrupted for executor: " + this.ptrAgvItem.getId(), e);
} finally { } finally {
System.out.println("Connector thread stopped for executor: " + this.ptrAgvItem.getId()); log.info("Connector thread stopped for executor: " + this.ptrAgvItem.getId());
} }
} }

Loading…
Cancel
Save