java中的进程与线程解析

来源:互联网 发布:c语言入门经典例题 编辑:程序博客网 时间:2024/06/05 17:24

一、进程与线程的概念


进程:系统要做一件事,运行一个任务,所有运行的任务通常就是一个程序;每个运行中的程序就是一个进程,这一点在任务管理器上面可以形象的看到。一个程序运行至少一个进程。

线程:当一个程序运行时,内部可能会包含多个顺序执行流,每个顺序执行流就是一个线程。简言之,线程是进程的组成部分,一个进程至少包含一个线程,可以包含多个线程。


二、进程的三大特性


独立性:进程是系统中独立存在的实体,它可以拥有自己独立的资源,每个进程都拥有自己私有的地址空间。在没有经过进程本身运行的情况下是不能访问其中的内容的。

动态性:进程与程序的区别在于,程序是静态的,进程是动态的。程序只是一个静态的指令集合,而进程是一个正在系统中运行的指令集合。有了时间的概念,如生命周期。

并发性:进程之间,交替着执行。


三、线程的特性


1、单线程可以很容易的共享内存,而进程之间不能共享内存。

2、系统创建线程的代价很小,而创建进程需要为该进程重新分配系统资源。因此多线程实现多任务并发比多进程实现并发的效率高。

3、Java语言内置多线程功能支持,而不是单纯的作为底层操作系统的调度方式。


原创粉丝点击