任务相关
This commit is contained in:
parent
76371d641c
commit
5bb5ea1aa5
|
|
@ -10,6 +10,7 @@ import com.hivekion.scenario.bean.ScenarioWsParam;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Map.Entry;
|
||||||
import java.util.NavigableMap;
|
import java.util.NavigableMap;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.concurrent.ConcurrentNavigableMap;
|
import java.util.concurrent.ConcurrentNavigableMap;
|
||||||
|
|
@ -125,16 +126,19 @@ public class Room implements AutoCloseable {
|
||||||
|
|
||||||
sendRemainTime((totalTime.get() - curTime));
|
sendRemainTime((totalTime.get() - curTime));
|
||||||
|
|
||||||
Map<String, TaskAction> actions = actionMap.ceilingEntry(curTime);
|
NavigableMap<Long, Map<String, TaskAction>> actions = actionMap.headMap(curTime, true);
|
||||||
if (actions != null && !actions.isEmpty()) {
|
if (!actions.isEmpty() ) {
|
||||||
|
actions.forEach((key, action) -> {
|
||||||
|
action.forEach((taskAction, task) -> {
|
||||||
|
actionExecutor.submit(task::doSomeThing);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
for (Map.Entry<String, TaskAction> entry : actions.entrySet()) {
|
|
||||||
actionExecutor.submit(entry.getValue()::doSomeThing);
|
|
||||||
}
|
|
||||||
// 全部执行后再清空
|
// 全部执行后再清空
|
||||||
actions.clear();
|
|
||||||
|
|
||||||
actionMap.remove(curTime);
|
|
||||||
|
actions.clear();
|
||||||
}
|
}
|
||||||
}, 0, 1, TimeUnit.SECONDS);
|
}, 0, 1, TimeUnit.SECONDS);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user