我已向Range
const doc = context.document;
const secs = doc.sections;
secs.load("items");
await context.sync();
//console.log(secs.items.length.toString());
const nrSecs = secs.items.length - 1;
const sect = secs.items[nrSecs];
const secPrev = secs.items[nrSecs-1];
//console.log(sect.isNullObject);
var sectRng = sect.body.getRange("Content");
const secStart = secPrev.body.getRange("End");
var sectAll = secStart.expandTo(sectRng);
sectAll.delete ();
await context.sync();
提交了工作:
Spring
现在我想取消一些工作。我有可运行对象,它没有ThreadPoolTaskExecutor
方法,因为线程是由执行者管理的。但是我找不到在 @Autowired
private ThreadPoolTaskExecutor taskExecutor;
private Map<String,Runnable> runningTasks = new HashMap<>();
public String doSomeTask() {
Runnable job = new MyJob();
String id = RandomStringUtils.randomAlphanumeric(32);
taskExecutor.execute(job);
runningTasks.put(id, job);
return id;
}
上取消给定作业的方法。
我遗漏了明显的东西还是执行错误的执行程序?
答案 0 :(得分:1)
我什至没有编译,但是这个想法与上面daniu和Savior的评论非常相似,
更改地图
//private Map<String,Runnable> runningTasks = new HashMap<>();
private Map<String,Future<?>> runningTasks = new HashMap<>();
使用提交来运行任务,
//taskExecutor.execute(job);
runningTasks.put(id, taskExecutor.submit(job));
然后,当您需要取消任务时,只需从地图上获取它,然后
runningTasks.get(id).cancel(true);