进程:
进程是一个程序执行的实例,如打开5个浏览器窗口,那么就有5个进程开启。一个进程可以同时被运行若干次,进程是CPU进行资源分配和调度的基本单位。
线程:
线程是比进程更小的运行单位,一个进程至少有一个主线程或多个线程,每个线程在完成不同的任务。当线程内的多个线程在同时运行时,这种方式叫做并发。多个线程的使用大大提高了程序执行效率和处理能力。
区别:
每个进程都需要操作系统为其分配独立的内存地址空间,而同一进程中的所有线程在同一内存地址空间,他们共享同一块内存空间中的资源。
创建线程的两种方式:
(1)继承Thread类
(2)实现Runnable接口,因为Runnable接口中没有start()方法,所以需要new一个新的Thread线程来启动实现Runnable的子类。
线程的五大状态:
创建状态(New),就绪状态(Runnable),运行状态(Running),阻塞状态(Blocked),死亡状态(Dead)
线程五大状态的关系图: