黑马程序员Java面试专题(2)|并发编程篇(1)线程基础

指路👉

黑马程序员Java面试专题(1)|常见集合篇(1)ArrayList&LinkedList-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/YOYU_/article/details/135932520黑马程序员Java面试专题(1)|常见集合篇(2)HashMap-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/YOYU_/article/details/136235772

Q1:进程和线程的区别?

  • 概念:进程是正在运行程序的实例,进程中包含了线程,每个线程执行不同的任务
  • 内存空间:不同的进程使用不同的内存空间,在当前进程下的所有所有线程可以共享内存空间
  • 切换:线程更轻量,线程上下文切换成本一般上要比进程上下文切换低(上下文切换指的是从一个线程切换到另一个线程)

Q2:并发和并行的区别?

现在都是多核CPU,在多核CPU下

  • 并发是同一时间应对多件事情的能力,多个线程轮流使用一个或多个CPU
  • 并行是同一时间动手做多件事情的能力,4核CPU同时执行4个线程

Q3:创建线程的方法?

1.继承Thread类

2.实现runnable接口

3.实现callable接口

4.使用线程池创建

Q3-1:runnable和callable有什么区别?

  • runnable接口run方法没有返回值
  • callable接口call方法有返回值,是个泛型,和Future、FutureTask配合可以用来获取异步执行的结果
  • callable接口的call()方法允许抛出异常,而runnable接口的run()方法异常只能在内部消化,不能继续上抛

Q3-2:线程的run()和start()有什么区别?

  • start():用来启动线程,通过该线程调用run方法执行run方法中所定义的逻辑代码,只能被调用一次(即只能开启一次线程)
  • run():封装了要被线程执行的代码,可以被调用多次

Q4:线程中包含了哪些状态?状态之间是如何变化的?

 Q5:新建T1,T2,T3三个线程,如何让他们顺序执行?

Q6:notifyAll和notify有什么区别?

  • notifyAll:唤醒所有wait线程
  • notify:只随机唤醒一个wait线程

Q7:在Java中wait和sleep方法的区别?

 Q8:如何停止一个正在运行的线程?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/420081.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RTE 开源|小红书 REDPlayer 正式发布!快来 get 同款播放器~

本项目由 RTE 开发者社区 x 小红书 联合运营 播放器最初出现在 19 世纪,当时主要用于播放音频,例如通过留声机播放唱片。 随着技术的进步,音频播放器不断改进,品质越来越好,体积也越来越小。到了今天,通过…

Vue2:用node+express写一个轻量级的后端服务

1、桌面创建demo文件夹 进入demo,执行如下命令 npm init输入名称: test_server然后一路回车 2、安装express框架 npm i express3、新建server.js 在demo文件夹中,新建server.js const express require(express) const app express()…

Linux——进程控制(一)进程的创建与退出

目录 一、进程创建 1.写时拷贝 2.创建多个进程 二、进程终止 1.main函数的返回值 2.bash中的$? 3.自定义退出码 4.C语言的错误码 5.错误码与退出码的区别 6.代码异常终止 7.exit函数 8.总结 一、进程创建 在之前,我们学过linux中的非常重要的函数——…

Fastadmin下拉选择菜单

下拉菜单效果图如下所示 对应的表字段为 cid int(11) unsigned NOT NULL DEFAULT ‘1’ COMMENT ‘分类ID 1 新手 2VIP 3基金产品’ 步骤如下: 一、lang/zh-cn 中找到对应的文件,添加 配置 二、Model 中添加方法 三、控制器中添加 四、add.html中 …

leetcode刷题(javaScript)——栈相关场景题总结

在LeetCode刷题中,栈是一个非常有用的数据结构,可以解决许多问题,包括但不限于以下几类问题: 括号匹配问题:例如检查括号序列是否有效、计算表达式的值等。逆波兰表达式求值:使用栈来实现逆波兰表达式的计算…

Python实现链表:从基础到应用

一、引言 链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。链表在内存中的存储不是连续的,这使得它在插入和删除操作上具有较高的效率。本文将使用Python语言来实现一个简单的链表,并展示其…

零基础学编程,中文编程工具之进度标尺构件的编程用法

零基础学编程,中文编程工具之进度标尺构件的编程用法 一、前言 今天给大家分享的中文编程开发语言工具 进度条构件的用法。 编程入门视频教程链接 https://edu.csdn.net/course/detail/39036 编程工具及实例源码文件下载可以点击最下方官网卡片——软件下载——…

力扣:35. 搜索插入位置

力扣:35. 搜索插入位置 描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,…

windows系统玩《模拟人生 4》 免安装版本

本文介绍如何在windows系统上玩《模拟人生 4》这个游戏,无需安装,直接玩! 首先下载百度网盘分享的文件,这里下载文章末尾。 下载完成后先点击 language-change.exe 将游戏语言更改为英文,默认是俄语,根本…

sqllabs的order by注入

当我们在打开sqli-labs的46关发现其实是个表格,当测试sort等于123时,会根据列数的不同来进行排序 我们需要利用这个点来判断是否存在注入漏洞,通过加入asc 和desc判断页面有注入点 1、基于使用if语句盲注 如果我们配合if函数,表达…

B端系统:导航机制设计,用户体验提升的法宝

Hi,大家好,我是贝格前端工场,从事8年前端开发的老司机。很多B端系统体验不好很大一部分原因在于导航设计的不合理,让用户无所适从,大大降低了操作体验,本文着重分析B端系统的导航体系改如何设计&#xff0c…

[CISCN2019 华北赛区 Day2 Web1]Hack World 1 题目分析与详解

一、分析判断 进入靶机,主页面如图: 主页面提供给我们一条关键信息: flag值在 表flag 中的 flag列 中。 接着我们尝试输入不同的id,情况分别如图: 当id1时: 当id2时: 当id3时: 我…

【IO流系列】ConvertStream 转换流

转换流 1. 概述2. 作用3. 字符编码和字符集3.1 字符编码3.2 字符集 4. InputStreamReader字符转换输入流4.1 构造方法4.2 代码示例 5. OutputStreamWriter字符转换输出流5.1 构造方法5.2 代码示例 6. 练习6.1 练习1:转换文件编码6.2 练习2:读取文件数据 …

Spring 源码解析

文章目录 前言相关Spring的定义接口整体代码StartupStep contextRefresh this.applicationStartup.start("spring.context.refresh")prepareRefresh()obtainFreshBeanFactory()registerBeanPostProcessors(beanFactory)SpringAOP原码流程EnableAspectJAutoProxyAnno…

基于java+springboot女士电商平台系统源码+文档设计

基于javaspringboot女士电商平台系统源码文档设计 博主介绍:多年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文末获取源…

GaussDB跨云容灾:实现跨地域的数据库高可用能力

背景 金融、银行业等对数据的安全有着较高的要求,同城容灾建设方案,在绝大多数场景下可以保证业务数据的安全性,但是在极端情况下,如遇不可抗力因素等,要保证数据的安全性,就需要采取跨地域的容灾方案。 …

【大咖分享】:千帆AppBuilder:我的AI大模型科研搭子

同济子豪兄介绍 不知不觉,我做人工智能科技区博主已经七年了。从斯坦福公开课系列,到精读AI经典论文系列,从编程奇妙夜,到两天搞定AI毕业设计系列。我们为十几万学员,提供人工智能各方向的论文课程、生涯规划、课题辅…

ROS2体系框架

文章目录 1.ROS2的系统架构2.ROS2的编码风格3.细谈初始化和资源释放4.细谈配置文件5.ROS2的一些命令6.ROS2的核心模块6.1 通信模块6.2 功能包6.3 分布式6.4 终端命令和rqt6.5 launch6.6 TF坐标变换6.7 可视化RVIZ 1.ROS2的系统架构 开发者的工作内容一般都在应用层,…

【计算机网络】五种IO模型与IO多路转接之select

文章目录 一、五种IO模型二、非阻塞IO1.fcntl2.实现函数SetNoBlock3.轮询方式读取标准输入 三、I/O多路转接之select1.初识select2.select函数原型3.socket就绪条件4.select的特点5.select缺点6.select使用案例--只读取数据的server服务器1.err.hpp2.log.hpp3.sock.hpp4.select…

游泳耳机哪种款式好?简单6招教你选到高品质机型!

游泳是一项全身性的运动,不仅能帮助我们保持身体健康,还能让我们在水中放松心情,享受水中的乐趣。而音乐则是人们生活中不可或缺的一部分,它能带给我们快乐和力量。当游泳与音乐相结合,游泳耳机应运而生,为…