任务相关

This commit is contained in:
李玉东 2025-09-18 11:31:16 +08:00
parent 76371d641c
commit 5bb5ea1aa5

View File

@ -10,6 +10,7 @@ import com.hivekion.scenario.bean.ScenarioWsParam;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.NavigableMap;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentNavigableMap;
@ -125,16 +126,19 @@ public class Room implements AutoCloseable {
sendRemainTime((totalTime.get() - curTime));
Map<String, TaskAction> actions = actionMap.ceilingEntry(curTime);
if (actions != null && !actions.isEmpty()) {
NavigableMap<Long, Map<String, TaskAction>> actions = actionMap.headMap(curTime, true);
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);
}