如何使用Callable完美替代Runnable
废话不多说,直接上代码
public static void main(String[] args) {
ExecutorService executorService = Executors.newFixedThreadPool(2);
Callable callable = new Callable() {
@Override
public Object call() throws Exception {
for (int i = 0; i < 10; i++) {
System.out.println("callable更新"+i+"条数据");
}
return 1;
}
};
Future funcTrue = executorService.submit(callable);
try {
Thread.sleep(1000);
System.out.println(funcTrue.get()+">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>执行完毕");
}catch (Exception e){
System.out.println("异常捕获");
}
Runnable runnable = new Runnable() {
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("Runnable更新"+i+"条数据");
}
}
};
Thread thread = new Thread(runnable);
thread.start();
}
Runnable声明的run方法返回值类型viod
Callable声明的call方法是泛型接口,根据你传入的类型来做返回值类型
Runnable原理自行百度,callable原理自行百度,我说的是如何用Callable替代Runnable!看明白!!!别***乱评论,现的你好像个 **