您的位置:首页 > 编程语言 > Java开发

Java--进程和线程基本概念

2018-02-26 00:00 281 查看

下一篇--线程的创建和启动

进程:

进程是处于运行中的程序,是系统进行资源分配的调度的独立单位。

进程特点:

独立性:进程是系统中独立存在的实体,它可以拥有自己独立的资源,每个进程都有自己私有的地址空间。

动态性:进程和程序的区别就是进程是正在系统中活动的指令集合。

并发性:多个进程可在单个处理器上并发进行,进程之间不会相互影响。

线程:

线程是进程的组成部分,一个进程可以有多个线程,一个线程必须有一个父进程。线程使得同一个进程可一并发处理多个任务。线程可以拥有自己的程序计数器、自己的堆栈和自己的局部变量,但不拥有系统资源,它与进程中的其他线程共享进程所拥有的所有资源。线程是处理器调度的基本单位。

线程特点:

线程可与其他线程共享进程中的共享变量和部分环境,相互之间协作来完成进程的任务。

线程是独立运行的,它并不知道系统中还有其他线程存在。

线程的执行是抢占式的。

线程的调度和管理由进程本身负责,操作系统不参与。

总结:操作系统可以同时执行多个任务,每个任务就是进程;进程可以同时执行多个任务,每个任务就是线程。

线程相对于进程的优势:

进程之间不能共享内存,但线程之间共享内存非常容易。

系统创建一个进程必须分配独立的内存空间和相关资源,但创建线程代价要小得多,因此多线程实现多任务效率更高。

Java语言内置了多线程功能支持,简化了Java的多线程编程。

并发和并行的区别:并行是指在同一时刻,有多条指令在多个处理器上运行;并发是在同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。

下一篇--线程的创建和启动
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java 进程和线程