基本概念
1、*进程(process)*是程序的一次执行过程,或是正在运行的一个程序。动态过程:有它自身的产生、存在和消亡的过程
2、线程(thread),进程可进一步细化为线程,是一个程序内部的一条执行路径
3、线程的生命周期
2、实现多线程的几种方法
1、extends Thread ,重写run方法
2、implements Runnable ,重写run方法
3、implements Callable ,重写call方法,抛出异常,有返回值,且用futureTask 继承
FutureTask<Integer> futureTask = new FutureTask<Integer>(new Mythread());
new Thread(futureTask).start();
try {
System.out.println(futureTask.get());
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
4、设置线程池 使用 Executor
ExecutorService threadPool = Executors.newFixedThreadPool(5);多线程池
ExecutorService threadPool = Executors.newCachedThreadPool();随机线程池
ExecutorService threadPool = Executors.newSingleThreadExecutor();设置单个线程池
注意threadPool.submit() 和 threadPool.shutdown(); 线程池的提交和关闭
ScheduledExecutorService service = Executors.newScheduledThreadPool(5); //设置加强线程池里的创建线程的时间
注意 service.schedule(callable, delay, unit) 和 service.shutdown();