Java多线程之进程与线程

Wesley13
• 阅读 558

进程与线程

进程

是程序的一次执行过程,或是正在运行的一个程序。是一个动态 的过程:有它自身的产生、存在和消亡的过程。例如运行的QQ,微信。

Java多线程之进程与线程

线程

进程可以进一步细化为线程,进程中独立运行的子任务就是一个线程。例如微信有文本聊天,图片下载,文件下载,都可以独立运行。若同时运行则称为多线程。

多线程

若一个进程同一时间并行执行多个线程,就是支持多线程的。

并行和并发

并行

多个CPU同时执行多个任务。相当于多个人同时做不同的事情。

并发

宏观上一个CPU同时执行不同的任务。微观上并不是同时执行,只是将时间分成若干个,使多个线程快速的交替执行,以便达到宏观上的同时执行。例如秒杀:多个人做同一件事情。

为什么要使用多线程

多线程可以有效的提高应用程序的性能,便于减低开发和维护的成本。

1,提高应用程序的响应

对于图像化界面更有意义,例如QQ聊天时,想同时视频聊天和下载传输过来的图片时,用多线程可增强用户的体验。

2,提高计算机系统CPU的利用率

对于单线程来说,当程序在等待某个同步操作的时候,处理器处于空闲状态。降低CPU的利用率。若是多线程的时候,则可以在等待的同时,开启另一个线程。

3,改善程序结构

将既长又复杂的进程分为多个线程,独立运行,利于理解和修改。

什么时候需要多线程

1,程序需要同时执行两个或者多个任务的时候。

2,程序需要实现一些需要等待的任务的时候。用户输入,文件读写,网络操作,搜索等。

3,需要一些后台运行的程序的时候。

点赞
收藏
评论区
推荐文章
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
lucien-ma lucien-ma
3年前
什么是线程?什么是进程?
Java多线程基础进程和线程的概念应用程序是静态的概念,进程和线程是动态概念,有创建就有销毁,存在也是暂时的,不是永久性的。进程与线程的区别在于进程在运行时拥有独立的内存空间(每个进程所占有的内存都是独立的)多个线程是共享内存空间的,但是每个线程的执行时相互独立的,同时线程必须依赖于进程才能执行,单独的线程是无法执行的,由进程来控制多个线程的执行。
Wesley13 Wesley13
3年前
4、jstack查看线程栈信息
1、介绍利用jps、top、jstack命令找到进程中耗时最大的线程,以及线程状态等等,同时最后还可以显示出死锁的线程查找:FoundoneJavaleveldeadlock即可1、jps获得进程号!(https://oscimg.oschina.net/oscnet/da00a309fa6
Wesley13 Wesley13
3年前
Java并发基础
一、多线程基础知识1.进程和线程进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。线程:进程内部的一个独立执行单元;一个进程可以同时并发的运行多个线程,
Wesley13 Wesley13
3年前
Java高级教程02
\TOC\1.Java线程1.1.多线程和多进程多进程:操作系统能够同时进行多个任务:每个app(word,播放器,浏览器)可以同时运行多线程:同一应用程序中哟多个顺序流同时执行线程是进程中的一部分1.2.线程的执行过程:!(
Wesley13 Wesley13
3年前
Java面试官都爱问的多线程和并发面试题汇总,多刷一题,多份安心!
Java多线程面试问题1、进程和线程之间有什么不同?一个进程是一个独立(selfcontained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的单一进程。线程可以被称为轻量级进程。线程需要较少的资源来创建和驻留在进
Wesley13 Wesley13
3年前
Java并发编程:进程、线程、并行与并发
一谈到Java并发编程,我们一般就会联想起进程、线程、并行、并发等等概念。那么这些概念都代表什么呢?进程与线程有什么关系?并发与并行又是什么关系呢?01 进程与线程进程是指程序的一次动态执行过程,通常我们说计算机中正在执行的程序就是进程,每个程序都会对应着一个进程。一个进程包含了从代码加载到执行完成的一个完整过程,它是操作系
Wesley13 Wesley13
3年前
Java线程与多线程
1线程与多线程1.1线程是什么?线程(Thread)是一个对象(Object)。用来干什么?Java线程(也称JVM线程)是Java进程内允许多个同时进行的任务。该进程内并发的任务成为线程(Thread),一个进程里至少一个线程。Java程序采用多线程方式来支持大量的并发请求处理,程序如果在
Stella981 Stella981
3年前
20175216 《Java程序设计》第十周学习总结
教材学习内容总结第12章Java多线程机制12.1进程与进程程序是一段静态的代码,进程是程序的一次动态执行过程,这个过程也是进程本身从产生、发展至消亡的过程。线程不是进程,是比进程更小的执行单位。但与进程不同的是,线程的中断和恢复可以更加节省系统的开销。没有进程就没有线程。
可莉 可莉
3年前
20175216 《Java程序设计》第十周学习总结
教材学习内容总结第12章Java多线程机制12.1进程与进程程序是一段静态的代码,进程是程序的一次动态执行过程,这个过程也是进程本身从产生、发展至消亡的过程。线程不是进程,是比进程更小的执行单位。但与进程不同的是,线程的中断和恢复可以更加节省系统的开销。没有进程就没有线程。