为了账号安全,请及时绑定邮箱和手机立即绑定

进程与线程

标签:
Java

1,并发性(concurrency)和并行性的区别
并行指在同一时刻,有多条指令在多个处理器上同时执行;
并发指在同一时刻只能有一条指令执行,但多个进程指令被快速轮换执行,
使得在宏观上具有多个进程同时执行的效果。
2,多线程则扩展了多进程的概念,使得同一个进程可以同时并发处理多个任务。
线程也被称做轻量级进程,线程是进程的执行单位。就像进程在操作系统中的地位一样,线程在程序
中是独立的,并发的执行流。当进程被初始化后,主线程就被创建了。对于绝大多数的应用程序来说,
通常仅要求有一个主线程,但也可以在该进程内创建多条顺序执行流,这些顺序执行流就是线程,每个线程
也是互相独立的。
3,线程是进程的组成部分,一个进程可以拥有多个线程,一个线程必须有一个父进程。线程可以拥有自己的堆栈,
自己的程序设计器和自己的局部变量,但不拥有系统资源,它与父进程的其他线程共享该进程所拥有的全部资源。
因为多个线程共享父进程里的全部资源,因此编程更加方便;但必须更加小心,因为需要确保线程不会妨碍同一进程里
的其他线程。
4,线程可以完成一定的任务,可以与其他线程共享父进程中的共享变量及部分环境,相互之间协同来完成进程所要完成的
任务。
5,线程是独立运行的,它并不知道进程中是否还有其他线程存在。线程的执行是抢占式的,也就是说,当前运行的线程
在任何时候都可能被挂起,以便另外一个线程可以运行。
6,一个线程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行。
7,从逻辑角度来看,多线程存在于一个应用程序中,让一个应用程序中可以有多个执行部分同时执行,但操作系统无须将
多个线程看做多个独立的应用,对多线程实现调度和管理以及资源分配。线程的调度和管理有进程本身负责完成。
8,简而言之:一个程序运行后至少有一个进程,一个进程里可以包含多个线程,但至少要包含一个线程。

点击查看更多内容
27人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
算法工程师
手记
粉丝
1
获赞与收藏
156

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消