网易首页 > 网易号 > 正文 申请入驻

Java面试之什么是多线程(一)

0
分享至

程序(Procedure)。是含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。

进程(Process)。是操作系统中正在运行的一个程序,是系统进行资源分配和调度的基本单位。

进程通信是指不同进程之间进行数据交换和协调的过程。在操作系统中有多种进程通信方式,包括以下几种:

管道:管道是指一种单向通信机制,它可以在两个进程之间传输数据。管道分为有名管道和匿名管道,有名管道可以在不同进程之间共享,而匿名管道只能在父子进程之间共享。

共享内存:共享内存是指多个进程可以访问同一块物理内存的机制,这样就可以避免数据的复制和传输,提高了数据访问的效率。Java中可以使用共享内存实现进程间通信的方式是使用Memory Mapped Files。

信号量:信号量是一种计数器,它可以用来控制多个进程对共享资源的访问。当多个进程同时访问某个共享资源时,通过对信号量的操作来实现对资源的互斥访问。

消息队列:消息队列是一种基于消息的通信机制,它可以在进程之间传递数据。每个进程都有一个消息队列,它们之间通过发送和接收消息来进行通信。

套接字:套接字是一种网络通信机制,它可以在不同主机上的进程之间传递数据,实现进程之间的通信和协调。

RPC:RPC是一种远程过程调用协议,它可以实现在不同主机上的进程之间调用函数和传递参数,类似于本地调用函数一样方便。RPC的实现方式包括基于消息传递、基于共享内存和基于套接字等多种方式。

线程(Thread)。是进程中的一个实体,有单独的一条执行路径,是CPU分配和调度的基本单位。线程是不会独立存在的,一个进程中至少有一个线程。进程中的多个线程共享进程的资源,这些线程可以并行或并发地执行,从而提高程序的效率和响应速度。

线程通信是指多个线程之间相互协作完成任务的过程。在Java中,线程通信主要通过共享内存和对象的等待和通知机制来实现。

共享内存:在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。典型的共享内存通信方式,就是通过共享对象进行通信。例如线程A与线程B之间如果要通信的话,那么就必须经历下面两个步骤:

1.线程A把本地内存A更新过的共享变量刷新到主内存中去。

2.线程B到主内存中去读取线程A之前更新过的共享变量。

消息传递:在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过明确的发送消息来显式进行通信。在Java中典型的消息传递方式,就是wait()和notify()或者BlockingQueue。

Java中的线程是程序执行的最小单元,它是由操作系统调度的独立执行的单位。Java中可以通过创建Thread类的实例来创建新的线程,也可以通过实现Runnable接口来创建线程。

用户线程(User Thread)。是指用户程序中创建的线程。比如在JVM启动时会调用main()函数,main()函数所在的线程就是一个用户线程,它们的执行不会影响程序的生命周期。当程序的所有用户线程都执行完毕时,程序才会退出。用户线程通常是通过调用Thread类的start()方法创建的,它们会一直运行直到程序退出或者调用stop()方法强制终止线程。

守护线程(Daemon Thread)。是指在程序运行过程中在后台提供服务的线程。比如垃圾回收线程、JIT线程都是守护线程,通常被用来执行一些与程序周期性无关的任务。当程序中只剩下守护线程时,程序就会退出。守护线程可以通过调用Thread类的setDaemon(true)方法设置为守护线程。

守护线程和用户线程之间有一个重要的区别,即守护线程不会阻止程序的退出。当程序退出时,守护线程会自动终止。因此,开发者需要根据具体的需求来选择使用用户线程还是守护线程。

需要注意的是,线程属性的设置需要在线程启动之前,否则会报IllegalThreadStateException异常。当程序中只剩下守护线程时,它们可能会突然终止,因此开发者需要避免在守护线程中执行一些需要保证完整性的操作,例如写文件、访问数据库等。

并行(Parallelism)。是指多个任务同时执行的过程,这些任务可以在多个处理器上并行执行,也可以在单个处理器上通过多个线程并行执行。比如在4核4线程的CPU架构中,同一时刻可以运行4个线程,那这4个线程就是并行执行的。并行的主要目的是提高程序的执行效率和性能,因为它可以让多个任务同时运行,从而减少等待时间和延迟。

并发(Concurrency)。是指多个任务交替执行的过程,这些任务可能在同一个处理器上通过时间片轮转机制交替执行,也可能在多个处理器上并行执行。比如在单核CPU架构中,OS通过CPU时间片机制提升CPU的并发能力;在多核CPU架构中,基于任务的并行执行能力以及CPU时间片切换的能力来提升CPU的并发能力。并发的主要目的是提高程序的响应能力和交互性,因为它可以让程序在等待某些操作完成的同时执行其他任务,从而让程序看起来更加快速和流畅。

需要注意的是,并行和并发并不是互相排斥的概念。在实际应用中,我们通常会同时使用并行和并发,以实现更高效、更灵活的程序设计。例如,在多核处理器上执行多个线程的时候,我们既可以使用并行来提高执行效率,也可以使用并发来提高响应能力和用户体验。

总的来说,并行是一个微观概念,描述CPU同时执行多个任务的能力。并发是一个宏观概念,它指的是CPU能够承载的压力大小。

多线程是指在同一个程序中,同时运行多个线程(线程是操作系统调度的最小单位),每个线程都可以执行不同的任务或指令。多线程的主要目的是提高程序的并发性和响应性,可以更充分地利用计算机的 CPU 和其他资源,从而提高程序的执行效率和用户体验。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
埃及、卡塔尔、美国发表联合声明

埃及、卡塔尔、美国发表联合声明

新京报
2024-06-02 09:45:40
欠薪闭店,创始人跑路!一瓶卖8块的国产老汽水,走到了破产边缘

欠薪闭店,创始人跑路!一瓶卖8块的国产老汽水,走到了破产边缘

老妞读书谈
2024-06-02 10:59:28
菲律宾前总统发言人:马科斯不是疯了,就是战争贩子

菲律宾前总统发言人:马科斯不是疯了,就是战争贩子

喜欢农家生活的阿律
2024-06-03 11:50:56
53年北京拆除大批古建筑,林徽因公开大骂副市长:将来你们要后悔

53年北京拆除大批古建筑,林徽因公开大骂副市长:将来你们要后悔

红色风云
2024-01-06 10:08:08
厂房招商,哀鸿一片

厂房招商,哀鸿一片

明源地产研究
2024-06-03 08:02:11
2024年白玉兰奖:5位男演员入围最佳男主角,最终谁能夺“视帝”

2024年白玉兰奖:5位男演员入围最佳男主角,最终谁能夺“视帝”

圈里的甜橙子
2024-06-03 01:58:49
父亲为女儿买保险每年交9.2万,7年后去领钱,保险:人死了才能领

父亲为女儿买保险每年交9.2万,7年后去领钱,保险:人死了才能领

芯怡飞
2024-06-03 08:02:21
家属辟谣:不是奶奶喂果冻噎到,是不小心被子捂着了

家属辟谣:不是奶奶喂果冻噎到,是不小心被子捂着了

糖逗在娱乐
2024-06-02 18:40:49
尿毒症是喝出来的?医生告诫:即便是铁打的肾,这3种水也要少喝

尿毒症是喝出来的?医生告诫:即便是铁打的肾,这3种水也要少喝

莫将离
2024-06-01 23:41:40
表面“美若天仙”,实际却“歪瓜裂枣”的5大女星,一个比一个毒

表面“美若天仙”,实际却“歪瓜裂枣”的5大女星,一个比一个毒

喜欢下班
2024-06-02 07:11:45
不懂就问:张志磊补拳是否构成偷袭?为何很多人说偷袭不光彩?

不懂就问:张志磊补拳是否构成偷袭?为何很多人说偷袭不光彩?

杂谈空间社
2024-06-02 23:19:00
具俊晔是懂得如何拿捏大S,菲律宾打碟为大S贴标签 2亿和解费破案

具俊晔是懂得如何拿捏大S,菲律宾打碟为大S贴标签 2亿和解费破案

柠檬有娱乐
2024-06-03 10:16:03
记得吗?这个辱骂医生的亿万富翁,不到五天就去世了

记得吗?这个辱骂医生的亿万富翁,不到五天就去世了

华庭讲美食
2024-05-29 07:15:13
人过50岁,三种肉要舍得吃,养出好骨骼,吃出好身体

人过50岁,三种肉要舍得吃,养出好骨骼,吃出好身体

今日养生之道
2024-06-02 17:02:17
泰媒:泰国队昨日进行在沈阳的首训,有伤在身的颂克拉辛也参训

泰媒:泰国队昨日进行在沈阳的首训,有伤在身的颂克拉辛也参训

直播吧
2024-06-03 09:04:07
2813枚核弹公开亮相,火力可覆盖全球,一旦开战将“无处可逃”?

2813枚核弹公开亮相,火力可覆盖全球,一旦开战将“无处可逃”?

元芳
2024-06-03 09:58:21
央视三胎政策视频,00后表示:看后连婚都不想结了,还生三胎?

央视三胎政策视频,00后表示:看后连婚都不想结了,还生三胎?

仙仙先生
2024-06-03 09:41:31
大s哭麻了!儿童节箖箖与奶奶张兰连线,希望奶奶赚100w超温馨!

大s哭麻了!儿童节箖箖与奶奶张兰连线,希望奶奶赚100w超温馨!

八卦爱侃娱
2024-06-02 10:36:09
今日飞天茅台价格大跌|2024年6月3日 全国白酒价格行情一览表

今日飞天茅台价格大跌|2024年6月3日 全国白酒价格行情一览表

前沿天地
2024-06-03 08:02:43
这样的人越来越多了!

这样的人越来越多了!

吴女士
2024-05-29 10:58:00
2024-06-03 14:04:49
WinVaz
WinVaz
江西赣州90后的农村人
19文章数 0关注度
往期回顾 全部

科技要闻

2万字演讲|黄仁勋剧透 未来3年新品有这些

头条要闻

武汉一警察牺牲 身中15刀仍下25级台阶紧追歹徒20米

头条要闻

武汉一警察牺牲 身中15刀仍下25级台阶紧追歹徒20米

体育要闻

万人空巷!皇马举行欧冠夺冠庆典

娱乐要闻

混战升级!编剧赵冬苓力挺王阳遭围攻

财经要闻

黄仁勋的计划:涉及新AI平台 HBM4 机器人

汽车要闻

搭载华为HiCAR 传祺M6 MAX售14.58万元

态度原创

旅游
手机
本地
数码
公开课

旅游要闻

哈尔滨至香港航线正式开通

手机要闻

曝一加13定制2K 8T LTPO高规格国产屏 还有超大电池

本地新闻

食味印象|歙县限定!枇杷味儿的清甜初夏

数码要闻

AMD下一代电脑处理器更名!改为“Ryzen AI 300系列”

公开课

近视只是视力差?小心并发症

无障碍浏览 进入关怀版