Chinaunix首页 | 论坛 | 博客
  • 博客访问: 874334
  • 博文数量: 354
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 3730
  • 用 户 组: 普通用户
  • 注册时间: 2017-08-21 18:43
文章分类

全部博文(354)

文章存档

2019年(126)

2018年(223)

2017年(5)

我的朋友

分类: Java

2018-09-20 15:07:07

Java开发基础学习中,关于Java的线程和进程了解多少呢?咱们今天就来简单了解下Java学习中线程与进程之间两者的联系进程是系统进行资源分配和调度的一个独立单位,线程是CPU调度和分派的基本单位。

两者的关系在于:

1.一个线程只能属于一个进程,而一个进程却可以有多个线程,但是至少要有一个线程。

2.资源分配给进程,同一进程的所有线程共享这个进程的所有资源。

3.线程在执行过程中,需要协作同步。不同进程的线程之间要利用消息通信的办法实现同步。

4.线程是指进程内的一个执行单元,也是进程内的可调度实体。

而两者的区别又在于:

1.调度:线程作为调度和分配的基本单位,而进程是作为拥有资源的基本单位。

2.并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可以并发执行。

3.拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源。

4.系统开销:在创建或撤销进程时,由于系统都要为之分配和回收资源,导致系统的明显大于创建或撤销线程时的开销。但进程有独立的地址空间,进程崩溃以后,在保护模式下不会对其他的进程产生影响,而线程只是一个进程中的不同的执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉了就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但是在进程切换的时候,耗费的资源比较大,效率要差一些。

以上就是分享java开发中关于线程与进程之间联系的简单分析了,想要众多的IT工作者中脱颖而出,就需要拥有高深的技术,学习增值是必不可少的。学习之路,是贵在坚持的!

阅读(1179) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~