
com.deep.crow.task.parallel.SupplyTask Maven / Gradle / Ivy
package com.deep.crow.task.parallel;
import com.deep.crow.multi.Multi;
import com.deep.crow.multi.MultiHelper;
import java.util.concurrent.ExecutorService;
import java.util.function.Supplier;
/**
* 异步计算
*
* @author Create by liuwenhao on 2022/4/11 11:48
*/
class SupplyTask implements ParallelTask {
int order;
Supplier supplier;
ExecutorService executorService;
public SupplyTask(int order, Supplier supplier, ExecutorService executorService) {
this.order = order;
this.supplier = supplier;
this.executorService = executorService;
}
public SupplyTask(Supplier supplier, ExecutorService executorService) {
this.supplier = supplier;
this.executorService = executorService;
}
@Override
public int order() {
return order;
}
@Override
@SuppressWarnings("unchecked")
public Multi assembling() {
return (Multi) MultiHelper.supplyAsync(executorService, supplier);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy