(1.)进程progress:
每个独立程序在计算机上的一次执行活动,运行一个程序,就是启动一个进程;
基于进程的多任务处理就是允许计算机同时运行多个程序 ;
每个进程都有独立的代码和数据空间
(2.)线程Thread:
线程是比进程更小的执行单位,基于线程的多任务处理就是一个程序可以执行多个任务;
同一类线程共享代码和数据空间;
每个线程都有独立的运行栈和程序计数器pc
(3.)两者的区别:
A.在操作系统中能同时运行多个任务(程序)叫多个进程
在同一程序中有多条执行路径并发执行叫多线程
B.进程的切换开销大,线程的切换开销小
(4.)通常在以下情况可能用到多线程:
*程序需要执行两个或多个任务
*程序需要实现一些需要等待的任务时,如用户输入、文件读写操作、网络操作等
*需要一些后台运行的程序时
参考书:《Java基础与案例开发详解》