进程:
1.进程是具有一定独立功能的程序关于某个数据集合上的一次活动(简单说就是一个程序的一次启动到关闭)
2.进程是操作系统进行资源调度和分配的一个独立的单位
3.进程和进程之间的内存单元是相互独立的
线程:
1.线程是进程的一个实体
2.线程是CPU的调度和分配的基本单元
3.线程是比进程更小的可以独立运行的基本单位
4.统一进程中多个线程之间的内存是共享的
所以说,多线程的程序拥有更好的高并发性,,拥有更好的性能和用户体验
创建线程的几种方式:
1.继承Thread类,重写run()方法,特点:不能继承其他类
2.实现Runnable接口,重写run()方法,特点 :实现解耦,避免单继承,只能抛运行异常,且不能捕获
3.实现Callable接口,重写call()方法,特点:返回线程执行结果,可抛任意异常,可捕获
4.使用线程池(使用java.util.concurrent.Excutor接口),特点:并发优势