public class BaseTest3 implements Callable {
@Override
public Object call() throws Exception {
int sum = 0;
for (int i = 0; i < 100; i++) {
if(i%2 == 0){
System.out.println(i);
sum += i;
}
}
return sum;
}
}
class Base3{
public static void main(String[] args) {
BaseTest3 baseTest3 = new BaseTest3();
FutureTask futureTask = new FutureTask(baseTest3);
new Thread(futureTask).start();
try {
Object o = futureTask.get();
System.out.println(o);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
}
线程池
public class BaseTest4 {
public static void main(String[] args) {
ExecutorService service = Executors.newFixedThreadPool(10);
Base4 base4 = new Base4();
service.execute(base4);//Runnable
// service.submit();//Callable
}
}
class Base4 implements Runnable{
@Override
public void run() {
for (int i = 0; i < 50; i++) {
System.out.println(Thread.currentThread().getName()+i);
}
}
}