什么是进程?
进程是在操作系统当中,正在运行的程序。程序运行需要内存资源,进程就是系统分配和调度资源的独立单位。
三个特性:
①独立性:进程之间是相互独立的,他们之间是不能够随意的访问彼此的资源的。
②动态性:程序是一个静态的概念,它是由一组静态的指令集合组成。进程系统中运行的程序,那它就是一组动态的指令集合。
③并发性:多进程可以在单个处理器上并发,它们之间不会互相影响。
这里需要注意并发和并行的意思。程序啊,进程啊,其实就是指令集合,进程怎么运行,就是通过处理器来处理指令,一个处理器同一时刻只能运行一条指令。并行就是同一时刻,多条指令在多个处理器上面运行。并发指的是同一时刻单个处理器只能处理一条指令,但是可以多条指令轮转执行。这样宏观上看就是多进程同时执行。
什么是线程
进程是相对于操作系统来说的,是操作系统的多任务。线程是相对于进程来说的,是进程的多任务。可以理解为借鉴进程的思路,在进程里面弄了一个特殊的“进程”,即线程。和进程对比,进程有系统资源,线程没有系统资源,只有局部变量,程序计数器,堆栈。线程之间共用进程的全部资源
多线程的优点
1.进程之间内存是相互独立的,而线程共线内存非常容易。
2.进程是针对操作系统的,会有系统资源的分配,而线程代价会小很多,多线程就会更加高效。
3.java有专门针对线程的相应的支持,所以编程会比较简单。
网友评论