📄 tasklistthreadlistobserver.java
字号:
import java.util.*;
public class TaskListThreadListObserver extends Thread {
private ArrayList<MainTaskThread> taskThreadList = null;
private ArrayList<TaskInfo> taskInfoList = null;
private boolean run = true;
public TaskListThreadListObserver(ArrayList taskInfoList) {
taskThreadList = new ArrayList<MainTaskThread>();
this.taskInfoList = taskInfoList;
}
public void run() {
while (run) {
Iterator<TaskInfo> it = taskInfoList.iterator();
TaskInfo ti = null;
while (it.hasNext() && !taskInfoList.isEmpty()) {
ti = it.next();
switch (ti.getState()) {
case TaskInfo.TASK_STATE_FINISHED:
case TaskInfo.TASK_STATE_STOP:
for (int i = 0; i < taskThreadList.size(); i++) {
MainTaskThread mtt = (MainTaskThread) taskThreadList.get(i);
TaskInfo ti2 = mtt.getTaskInfo();
if (ti2 == ti) {
mtt.setRun(false);
taskThreadList.remove(i);
} else {
System.out
.println("thread and taskInfo are not relevant!");
}
}
break;
case TaskInfo.TASK_STATE_RUN:
for (int i = 0; i < taskThreadList.size(); i++) {
MainTaskThread mtt = (MainTaskThread) taskThreadList.get(i);
TaskInfo ti2 = mtt.getTaskInfo();
if (ti2 == ti) {
} else {
MainTaskThread m = new MainTaskThread(ti);
taskThreadList.add(m);
m.start();
}
}
break;
case TaskInfo.TASK_STATE_PAUSE:
break;
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -