A:Thread
简简单单
Thread t = new Thread() {
@Override
public void run() {
log.info(1);
}
};
t.start();
B:Runnable
分离任务与线程
Runnable run = new Runnable() {
@Override
public void run() {
log.info(1);
}
};
new Thread(run).start();
C:FutureTask
获取任务结果
FutureTask<Integer> task = new FutureTask<>(new Callable<Integer>() {
@Override
public Integer call() throws Exception {
log.info(1);
return 2;
}
});
new Thread(task).start();
log.info(task.get());//会阻塞直到返回结果