首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
不想说话69328
更多收藏集
微信扫码分享
微信
新浪微博
QQ
19篇文章 · 0订阅
国内Java面试总是问StringBuffer,StringBuilder区别是啥?档次为什么这么低?
这是一个知乎上面很火的问题(https://www.zhihu.com/question/50211894 ),下面是我关于这个问题的回答,截止今天,这个答案收获了500+赞和70+评论。 这个问题只是开个场,热个身而已啊。 针对以上的问题,我给一些答案,希望大家都能有所收获。…
面试必备:Java线程池解析
掌握线程池是后端程序员的基本要求,相信大家求职面试过程中,几乎都会被问到有关于线程池的问题。我在网上搜集了几道经典的线程池面试题,并以此为切入点,谈谈我对线程池的理解。如果有哪里理解不正确,非常希望大家指出,接下来大家一起分析学习吧。 面试问题2:按线程池内部机制,当提交新任务…
Java实现生产者和消费者的5种方式
Java实现生产者和消费者的5种方式
AQS解析与实战
前段时间在面试,发现面试官都有问到同步器AQS的相关问题。AQS为Java中几乎所有的锁和同步器提供一个基础框架,派生出如ReentrantLock、Semaphore、CountDownLatch等AQS全家桶。本文基于AQS原理的几个核心点,谈谈对AbstractQueue…
Java并发编程的艺术学习笔记(三)
●保证处理器的重排序不影响并发编程。 ●对于普通方法来说,锁是当前实例对象。 ●对于静态方法来说,锁是当前类的Class对象。 ●对于同步块来说,锁是synchronize括号里的对象。 2. Java对象头 Java对象头主要由两部分组成:Mark Work 和类型指针。 ●…
Java面试必问-死锁终极篇
这个话题是源自笔者以前跟人的一次技术讨论,“你是怎么发现死锁的并且是如何预防、如何解决的?”以前听到的这个问题的时候,虽然脑海里也有一些思路,但是都是不够系统化的东西。直到最近亲身经历一次死锁,才做了这么一次集中的思路整理,撰录以下文字。希望对同样问题的同学有所帮助。 首先我们…
面试必备:Java volatile的内存语义与AQS锁内存可见性[精品长文]
保证此变量对所有线程的可见性,这里的 “可见性”是指当一条线程修改了这个变量的值,新值对于其他线程来说是可以立即得知的。 禁止指令重排序优化。 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节。此处的变量主要…
发生死锁怎么办
我们使用锁来保证线程安全,但是使用不当与滥用可能就会引起死锁。并发程序一旦死锁,一般没有特别好的办法,很多时候只能重启。所以我们一定要比避免死锁。 举个不恰当的例子:现在岳不群通过阴谋手段获取到了葵花宝典的上册,然后就闭关修炼自宫了,此刻他想继续争夺下册一块练,不然自宫就白忙活…
让人抓头的Java并发(二) 线程池ThreadPoolExecutor分析
corePoolSize:表示常驻的核心线程数量。如果为0执行任务之后没有任何请求进入时将被销毁,如果大于0则不会被销毁。 maximumPoolSize:表示线程池最大能够容纳同时执行的线程数,必须大于等于1。如果和corePoolSize相等即是固定大小线程池,如果待执行线…
Java并发编程的艺术学习笔记(一)
CPU通过分配短时间(一般是几十毫秒)的时间片,让每个线程都能轮流得到执行,这样做的效果是让我们感觉多个线程是同时执行的。 CPU通过时间片的分配算法来循环执行线程,当一个线程的时间片用完时,当前线程的状态将被保存起来,以便以后切换回这个线程时,能恢复去先前的执行状态。所以线程…