E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Java并发编程基础面试题
Java 编程之美:并发编程高级篇,必须码住了!
前言借用
Java并发编程
实践中的话:编写正确的程序并不容易,而编写正常的并发程序就更难了。
Java喵
·
2023-08-08 09:58
Java并发编程
实战
线程安全性一个对象是否线程安全,取决于它是否被多个线程访问Java的同步机制关键字是synchronized,它提供了一种独占的加锁方式,但“同步”这个术语还包括volatile类型的变量,显式锁以及原子变量由于不恰当的执行时序而出现不正确的结果这种情况成为:静态条件(racecondition,这里的condition翻译成情况更合适)大多数竞态条件的本质:基于一种可能失效的观察结果做出判断或者
官大航
·
2023-08-08 01:18
Java并发编程
:什么是CAS?这回总算知道了
无锁的思想众所周知,Java中对并发控制的最常见方法就是锁,锁能保证同一时刻只能有一个线程访问临界区的资源,从而实现线程安全。然而,锁虽然有效,但采用的是一种悲观的策略。它假设每一次对临界区资源的访问都会发生冲突,当有一个线程访问资源,其他线程就必须等待,所以锁是会阻塞线程执行的。当然,凡事都有两面,有悲观就会有乐观。而无锁就是一种乐观的策略,它假设线程对资源的访问是没有冲突的,同时所有的线程执行
鄙人薛某
·
2023-08-07 23:32
Spring Bean如何保证并发安全
这样每次从容器中获取到的Bean就是一个新的实例,避免了多线程共享同一个对象实例的问题.2.不改变Bean作用域的情况下,可以避免在Bean中存可变状态的声明,尽量使用局部变量或使用线程安全的数据结构.3.使用
Java
*郑*
·
2023-08-07 15:36
面试
spring
java
设计模式(2018.9.28)
1.3线程安全的懒汉模式:内部类的单例模式(
java并发编程
推荐的单例模式创建方式:内部类Holder)。
瑟闻风倾
·
2023-08-07 00:40
Java并发编程
:线程池的使用
如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。
会java的赵恒
·
2023-08-06 18:09
【笔记】
Java并发编程
--Executors
为什么不建议使用Executors创建线程池分析不建议使用Executors来创建线程池,主要是有两大原因第一个是问题回溯的问题,使用Executors都可以使用默认的情况,无法用户自定义线程名称不利于排查问题,第二个原因也是最主要原因就是线程池的队列长度太长在这种情况下可能会导致往队列中不停的添加任务,最终在没有达到队列上线的情况下先把服务器运行的内存资源耗尽导致OOM通过直接使用ThreadP
TaiKuLaHa
·
2023-08-06 15:04
Java
笔记
Java并发编程
第一弹
1、线程的创建创建线程的方式有两种,第一种是通过继承Thread类,重写run方法;第二种是通过实现Runnable接口通过源码发现,创建线程只有一种方式那就是构造Thread类,而实现线程的执行单元则有两种方式,第一种是重写Thread类的run方法,第二种是实现Runnable接口的run方法,并且将Runnable实例用作构造Thread的参数。1.2、拓展Thread类的run方法是不能和
hellotqq
·
2023-08-04 23:46
java并发编程
java
多线程
并发编程
Java
基础面试题
1
Java
基础面试题
一、面向对象和集合专题1.面向对象和面向过程的区别面向过程:是分析解决问题的步骤,然后用函数把这些步骤一步一步地实现,然后在使用的时候一一调用则可。
JavaHxg
·
2023-08-04 20:32
面试
java
python
开发语言
Java
基础面试题
2
Java
基础面试题
一、IO和多线程专题1.介绍下进程和线程的关系进程:一个独立的正在执行的程序线程:一个进程的最基本的执行单位,执行路径多进程:在操作系统中,同时运行多个程序多进程的好处:可以充分利用CPU
JavaHxg
·
2023-08-03 18:48
面试
java
开发语言
Java
基础面试题
3
Java
基础面试题
1:https://cloud.fynote.com/share/d/qPGzAVr52:https://cloud.fynote.com/share/d/MPG9AVsAG3:https
JavaHxg
·
2023-08-03 18:15
面试
java
开发语言
开篇词
作为一名java小白来说,深入学习
java并发编程
和JVM原理是成为java大牛的毕经之路。而自己从一年前开始零零碎碎地接触JUC,并在一些业务场景下使用它们。
大风过岗
·
2023-08-03 14:35
【漫画】
JAVA并发编程
之并发模拟工具
上一节【漫画】
JAVA并发编程
三大Bug源头(可见性、原子性、有序性)我们聊了聊并发编程的三个bug源头,这还没开始进入并发世界,胖滚猪就遇到了难题。。
胖滚猪学编程
·
2023-08-03 12:31
CAS操作——
Java并发编程
Java并发编程
中CAS操作需要输人两个数值,一个旧值(期望操作前的值)和一个新值,在操作期间先比较旧值有没有发生变化,如果没有发生变化,才交换成新值,发生了变化则不交换。
yYahoo~
·
2023-08-03 04:04
并发编程
Java
java
开发语言
Java面试宝典pdf整理
一Java
基础面试题
面向对象和面向过程的区别Java语言有哪些特点关于JVMJDK和JRE最详细通俗的解答OracleJDK和OpenJDK的对比Java和C++的区别什么是Java程序的主类应用程序和小程序的主类有何不同
码农乐园
·
2023-08-02 17:27
java
面试
jvm
Java IO
基础面试题
1、Java中有几种类型的流?按数据流向:输入流(inputStream)和输出流(outputStream)。按照实现功能分:节点流(可以从或向一个特定的地方(节点)读写数据。如FileReader)和处理流(是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader。处理流的构造方法总是要带一个其他的流对象做参数。一个流对象经过其他流的多次包装,称为流
执着的逗比
·
2023-08-02 13:19
JAVA并发浅析
Java并发编程
是指在多线程环境下,同时执行多个任务,从而提高程序的执行效率和性能。
爱学习的卢生
·
2023-08-02 07:30
java
开发语言
运维
学习
服务器
Java并发编程
实战——基础知识2
文章目录4对象的组合4.1设计线程安全的类4.1.1收集同步需求4.1.2依赖状态的操作4.1.3状态的所有权4.2实例封闭4.2.1Java监视器模式4.2.2示例:车辆追踪4.3线程安全性的委托4.3.1示例:基于委托的车辆追踪器4.3.2独立的状态变量4.3.3当委托失效时4.3.4发布底层的状态变量4.3.5示例:发布状态的车辆追踪器4.4在现有的线程安全类中添加功能4.4.1客户端加锁机
kaikai_sk
·
2023-08-02 05:48
#
Java并发编程
java
开发语言
Java并发编程
实战——基础知识
文章目录1基础知识1.3线程带来的风险1.3.1安全性问题1.3.2活跃性问题2线程安全性2.2原子性2.2.1竞态条件2.2.1数据竞争2.3加锁机制2.3.1内置锁2.4用锁来保护状态3对象的共享3.1可见性3.1.1失效数据3.1.2非原子的64位操作3.1.3加锁与可见性3.1.4volatile变量3.2发布与逸出3.3线程封闭3.3.1Ad-hoc线程封闭3.3.2栈封闭3.3.3Th
kaikai_sk
·
2023-08-02 05:18
#
Java并发编程
java
Java高并发--AQS
Java高并发--AQS主要是学习慕课网实战视频《
Java并发编程
入门与高并发面试》的笔记AQS是AbstractQueuedSynchronizer的简称,直译过来是抽象队列同步器。
weixin_30342827
·
2023-08-01 22:05
《
Java并发编程
实战》读书笔记五:深入理解同步实现
一、构建自定义的同步工具1.内置的条件队列条件队列就如同烤面包机上的面包已好的铃声。如果你正在听着它,当面包烤好后你可以立即注意到,并且放下手头的事情开始品尝面包,如果你没有听见它,你会错过通知消息,但是回到厨房后还是看到面包的状态,如果已经烤完,就取面包,如果未烤完,就再次监听铃声。条件队列中的元素是一个个正在等待相关条件的线程。每一个对象都可以作为一个条件队列,并且Object的wait,no
小七奇奇
·
2023-08-01 15:26
[
Java并发编程
实战]构建一个高效可复用缓存程序(含代码)
一屋不扫何以扫天下?———《后汉书·陈蕃传》它告诉我们,要从一点一滴的小事开始积累,才能做成一番大事业。PS:如果觉得本文有用的话,请帮忙点赞,留言评论支持一下哦,您的支持是我最大的动力!谢谢啦~这几天更新了这么多篇文章,其实这些都是并发编程中最基础的知识。现在,我们是时候利用这些知识来写一个小程序了。本篇文章就来介绍如何构建一个用来存储计算结果的高效、可伸缩高速缓存,虽然简单,但也可以说算是对前
seaicelin
·
2023-08-01 01:35
Java并发编程
解析 | 基于JDK源码解析Java领域中并发锁之ReentrantReadWriteLock锁的设计思想与实现原理 (二)
苍穹之边,浩瀚之挚,眰恦之美;悟心悟性,善始善终,惟善惟道!——朝槿《朝槿兮年说》写在开头在并发编程领域,有两大核心问题:一个是互斥,即同一时刻只允许一个线程访问共享资源;另一个是同步,即线程之间如何通信、协作。主要原因是,对于多线程实现实现并发,一直以来,多线程都存在2个问题:线程之间内存共享,需要通过加锁进行控制,但是加锁会导致性能下降,同时复杂的加锁机制也会增加编程编码难度过多线程造成线程之
朝槿木兮
·
2023-07-31 16:34
java并发编程
实战之java内存模型
什么是内存模型?为什么需要它假设一个线程为变量aVariable赋值:aVariable=3;内存模型需要解决这个问题:在什么条件下,读取aVariable的线程将看到3?这听起来似乎是个愚蠢的问题,但如果缺少同步,那么将会有许多因素使得线程无法立即甚至永远,看到另一个线程的操作结果。在编译器生成的指令顺序,可以与源代码中的顺序不同,此外编译器还会把变量保存在寄存器而不是内存中,处理器可以采用乱序
tracy_668
·
2023-07-31 14:53
java
基础面试题
1
目录Java语言有哪些特点Java都有那些开发平台?Jdk和Jre和JVM的区别【重要】面向对象和面向过程的区别什么是数据结构?Java的数据结构有哪些?1.数组:2.队列Queue3.链表LinkedList4.栈Stack5.树Tree什么是OOP?类与对象的关系?面向对象的特征?【重要】Java中的基本数据类型?什么是隐式转换,什么是显式转换?【重要】char类型能不能转成int类型?能不能
華同学.
·
2023-07-31 04:21
后端
java
jvm
面试
助力秋招-独孤九剑荡剑式 | Java语言&
基础面试题
来源:大数据技术与架构作者:编辑组,编辑组现在就剩我一个人:王知无。一个人就是一支队伍。大数据技术与架构点击右侧关注,大数据开发领域最强公众号!暴走大数据点击右侧关注,暴走大数据!By大数据技术与架构场景描述:整个大数据开发技术栈我们从实时性的角度来看,主要包含了离线计算和实时计算两大部分,而整个大数据生态中的框架绝大部分都是用Java开发或者兼容了Java的API调用,那么作为基于JVM的第一语
王知无(import_bigdata)
·
2023-07-30 05:36
怎么学习
Java并发编程
相关技术? - 易智编译EaseEditing
学习
Java并发编程
可以通过多种方式进行,包括但不限于以下几种:在线教程和学习平台:网上有许多免费和付费的
Java并发编程
教程和学习平台,如Coursera、Udemy、edX、Codecademy等。
易智编译
·
2023-07-29 20:44
学习推荐
学习
java
开发语言
职场和发展
科技
java并发编程
不可缺少的API介绍
java.util.concurrent包1.1Executors线程池Executor:接口,仅有一个方法为execute(Runnable)ExecutorService:Executor的子接口,扩展了Executor的方法,如submit/shutdown等。Executors:工厂类,提供生成各种线程池的静态方法ScheduledExecutorService:ExecutorServi
酷拼车
·
2023-07-29 03:59
Java 多线程开发
如果你觉得此文很简单,那推荐你看看Java并发包的的线程池(
Java并发编程
与技术内幕:线程池深入理解),或者看这个专栏:
Java并发编程
与技术内幕。
jiayifang1
·
2023-07-29 01:18
java
基础面试题
58道(2023)
面试题在经典不在多,以下都是我面试过程中整理出来的经典面试题,这些
基础面试题
在找实习工作时特别容易考,在找中级或者高级java工程师职位时,也会作为基础题从里面选出来几道,掌握这些,机会多多。加油!
小雨滴Java
·
2023-07-28 19:56
java面试
java基础面试题
面试
java
Java并发编程
面试题
目录一、线程、进程、程序二、线程状态三、线程的七大参数四、线程有什么优缺点?五、start和run方法有什么区别?六、wait和sleep的区别?七、lock与synchronized的区别八、Volatile关键字是线程安全的吗?底层原理是什么?九、synchronized作用和底层原理?十一、ThreadLocal是线程安全的吗?底层原理是什么?会存在内存泄露吗?十二、HashMap和Conc
fighting!899
·
2023-07-28 17:05
java
开发语言
jvm
Java
基础面试题
目录一、Cookie和session有什么区别?二、Get和Post有什么区别?三、Http和Https有什么区别?四、Http和RestTemplate有什么区别?五、什么是双亲委派模型?六、说一下JVM运行时数据区?七、String、StringBuffer、StringBuilder有什么区别?八、实现一个线程有哪几种方式?有什么区别?九、三次握手和四次挥手十、ArrayList和LinkL
fighting!899
·
2023-07-28 17:04
java
开发语言
并发编程中锁的优化
在
Java并发编程
中,锁是一种常用的同步机制,用于控制对共享资源的访问。使用锁可以确保多个线程之间的互斥访问,避免数据竞争和并发问题。然而,锁的使用可能会带来一定的性能开销,特别是在高并发场景下。
旷野历程
·
2023-07-28 12:27
Java
java
锁
并发编程
[
Java并发编程
] 并发容器框架的简单介绍
三军可夺帅也,匹夫不可夺志也。———《论语》上一篇讲到同步容器类的潜在问题,可以通过两个方法解决。可以通过客户端加锁解决。可以使用并发容器类来解决问题。客户端加锁的方法我们已经知道,所以,这一篇介绍一下并发容器类原理,看它是如何解决这些问题的。下面看下并发容器的框架图:这里写图片描述我们从上图可以看到,它们分为五大类:Map,List,Set,Collection,Queue,同步容器类都是从这五
seaicelin
·
2023-07-28 12:40
Java并发中的CAS,AQS和ABA问题
今天聊一下
Java并发编程
中的CAS,AQS以及ABA问题。CASJava并发中的CAS是指CompareandSwap(比较并交换)操作。它是一种无锁的同步机制,用于实现多线程环境下的原子操作。
wayne214
·
2023-07-28 06:31
Java
java
Java并发编程
面试题
@Author郑金维并发编程面试题1一、原子性高频问题:1.1Java中如何实现线程安全?多线程操作共享数据出现的问题。锁:悲观锁:synchronized,lock乐观锁:CAS可以根据业务情况,选择ThreadLocal,让每个线程玩自己的数据。1.2CAS底层实现最终回答:先从比较和交换的角度去聊清楚,在Java端聊到native方法,然后再聊到C++中的cmpxchg的指令,再聊到lock
JavaHxg
·
2023-07-27 21:02
面试
java
开发语言
CompletionService
《
Java并发编程
实践》一书6.3.5节CompletionService:Executor和BlockingQueue,有这样一段话:"如果向Executor提交了一组计算任务,并且希望在计算完成后获得结果
4f03f33f33be
·
2023-07-27 16:32
Java并发编程
学习笔记(二)线程的基础知识
一、线程常见方法start:运行线程,调用runrun:定义线程的任务join:当前线程等待指定线程结束,然后继续执行后续任务getId:获取线程唯一idgetName:获取线程名getPriority:获取线程优先级getState:获取线程状态isInterrupted:判断是否被打断isAlive:判断线程是否存活interrupt:打断线程,如果打断的是正在运行的线程,会设置打断标记,即为
奥妙无穹
·
2023-07-27 15:21
Java并发
java
学习
笔记
redis面试1
Redis
基础面试题
1、为什么要使用Redis做缓存缓存的好处使用缓存的目的就是提升读写性能。而实际业务场景下,更多的是为了提升读性能,带来更好的性能,带来更高的并发量。
JavaHxg
·
2023-07-27 09:22
面试
java
开发语言
工作中一些必须要看的书
一:技术类1.重构改善既有代码的设计2.EffectiveJava中文版3.深入理解Java虚拟机[JVM高级特性与最佳实践](周志明)4.
Java并发编程
实战.5.Android开发艺术探索6.设计模式之禅
布拉德很帅
·
2023-07-27 02:19
书
需要看的书籍
java并发编程
11:JUC之ReentrantLock使用与原理
目录使用可重入可打断锁超时公平锁条件变量原理非公平锁实现原理源码流程锁重入原理可打断原理与不可打断原理公平锁原理条件变量原理await流程signal流程使用ReentrantLock是可冲入锁,与synchronized一样,都支持可重入。但是相对于synchronized它具备如下特点可中断可以设置超时时间可以设置为公平锁支持多个条件变量ReentrantLock实现了Lock接口。基本语法/
coder Ethan
·
2023-07-27 02:12
java并发编程JUC
java
开发语言
java并发编程
12:JUC之ReentrantReadWriteLock使用与原理
目录概述使用原理源码流程StampedLock概述ReentrantReadWriteLock是可重入的读写锁。其内部除了和一样有个同步器Sync,还有一个读锁和一个写锁:/**Innerclassprovidingreadlock*/privatefinalReentrantReadWriteLock.ReadLockreaderLock;/**Innerclassprovidingwritel
coder Ethan
·
2023-07-27 02:12
java并发编程JUC
java
并发编程
java并发编程
10:AQS
目录什么是AQS原理什么是AQSjuc包的结构如下图:AQS就是AbstractQueuedSynchronizer,是个抽象类,实现了自己的一些方法。它是阻塞式锁和相关的同步器工具的框架。很多并发类都是基于它实现的,如:ReentrantLock、CountDownLatch、Semaphore、ReadWriteLock,CyclicBarrier。AQS的设计是基于模板方法模式的,也就是说,
coder Ethan
·
2023-07-27 02:12
java并发编程JUC
java
并发编程
java并发编程
13:JUC之Semaphore、CountdownLatch、 CyclicBarrier
目录Semaphore使用常见应用原理源码流程CountdownLatch使用原理CyclicBarrier使用Semaphore使用Semaphore是一种计数信号量,它用于控制对共享资源的访问。它维护了一个许可计数器,表示可用的许可数量。线程在访问共享资源前必须先获得许可,如果许可数量大于0,则线程可以获得许可并继续执行,同时许可数量减少;如果许可数量为0,则线程必须等待,直到有其他线程释放许
coder Ethan
·
2023-07-27 02:08
java并发编程JUC
java
python
算法
Java并发学习笔记
最近都在看极客时间的《
Java并发编程
》这一课程,看了好一阵,有些明白,有些混沌。于是想着自己整理一版,根据自己的理解做一点笔记。先罗列了一个笔记大纲,从整体去看,如何去学习。
可乐zzz
·
2023-07-26 18:29
挑战css
基础面试题
挑战css
基础面试题
一,看看你能做出来吗文章目录前言一、盒模型二、如何实现一个最大的正方形三、文本一行水平居中,多行居左四、画一个三角形五、BFC理解六、两栏布局,左边固定,右边自适应,左右不重叠最后前言本片文章主要是复习并
菜鸡爱上编程
·
2023-07-26 15:47
css
css
前端
华为各类工程师通信
基础面试题
目及答案
硬件1、语音信号数字化过程中,采用的是的量化方法是非均匀量化。2、PCM30/32路系统中,每个码的时间间隔是488ns。3、PCM30/32路系统中,TS0用于传送帧同步信号,TS16用于传送话路信令。4、PCM30/32路系统中,复帧的重复频率为500HZ,周期为2ms。5、程控交换机的硬件可分为话路系统和中央控制系统两部分,整个交换机的控制软件都放在控制系统的存储器中。6、一般二氧化硅光纤的
weixin_30318645
·
2023-07-26 09:08
面试
运维
网络
JavaGuide知识点整理——Dubbo
基础面试题
总结
Dubbo基础什么是Dubbo?Dubbo是Apache下的,一款高性能,轻量级,开源的javaRPC框架。根据Dubbo官方文档的介绍,Dubbo提供了溜达核心能力:面向接口代理的高性能RPC调用智能容错和负载均衡服务自动扩展能力高度可扩展能力运行期流量调度可视化的服务治理与运维Dubbo核心能力简单来说,就是Dubbo不光可以帮助我们调用远程服务,还提供了一些其它开箱即用的功能,比如说智能负载
唯有努力不欺人丶
·
2023-07-26 07:17
【
Java并发编程
】深入理解并发可见性、有序性、原子性与JMM内存模型
6线程安全要素与JMM内存模型6.1线程安全三要素原子性原子,即一个不可再分割的颗粒;原子性指的是一个操作,要么完全执行成功或完全执行失败;不采取任何的原子性保障措施的自增操作并不是原子性的,比如i++操作;线程上下文切换可能会带来原子性问题,解决方案:Atomic原子类(CAS)、sychronized、Lock;案例分析:publicclassAtomicTest{privatestatici
Firechou
·
2023-07-26 03:38
#
Java基础
java
开发语言
JMM内存模型
可见性
原子性
有序性
【Java】
基础面试题
第一套:一、选择题:1.下面那些是不合法的标识符(AC)A.$personsB.TwoUsersC.*pointD._endline标识符是用户编程时使用的名字,对于变量、常量、函数、语句块也有名字;我们统统称之为标识符。标识符规则如下:(1)第一个字符必须是字母(不分大小写)或下划线();(2)后跟字母(不分大小写)、下划线()或数字组成;(3)标识符中的大小写字母有区别。如,变量sum,sum
猫饭_ACE
·
2023-07-26 02:47
面试
java
上一页
16
17
18
19
20
21
22
23
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他