首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
孙光超
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
Java 中的阻塞队列
阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当队列满时,存储元素的线程会等待队列可用。阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。阻塞队列就是生产者存放元素的容器,而消费者也只从容器里拿元素。
并发番@Thread一文通(1.7版)
并发番@Thread一文通(1.7版)
别再说你不懂线程池——做个优雅的攻城狮
线程池,顾名思义就是装线程的池子。其用途是为了帮我们重复管理线程,避免创建大量的线程增加开销,提高响应速度。 作为一个严谨的攻城狮,不会希望别人看到我们的代码就开始吐槽,new Thread().start()会让代码看起来混乱臃肿,并且不好管理和维护,那么我们就需要用到了线程…
通俗易懂,各常用线程池执行的-流程图
有时候花了大把时间去看一些东西却看不懂,是很 “ 蓝瘦 ” 的,花时间也是投资。 废话少说,我们开始。下图,皆可自行保存,常常阅之。日久,根深蒂固 corePoolSize,maximumPoolSize,workQueue之间关系。 当线程池中线程数小于corePoolSiz…
聊聊线程池原理,这一顿操作说懵阿里面试官...
想要进阶自己的开发水平,JDK源码中一些优秀的设计必须要经常学习,哪怕不学习,应对面试的时候,还是要能够应对几招,代表自己对这些东西还是有所了解。 对上面问题都已经了如指掌的大佬,联系我,让我表达对你的膜拜... 以上问题相对来说并不是很难,只要有认真看线程池源码,都可以找到答…
【肥朝】你的接口,真的能承受高并发吗?
好在这个并发问题的难度并不大,本篇案例排查非常适合小白入门,我们可以通过本地模拟场景重现,将问题范围缩小,从而逐步定位问题. 首先我们可以准备一个并发工具类,通过这个工具类,可以在本地环境模拟并发场景.手机查看代码并不友好,但是没关系,以下代码均是给你复制粘贴进项目重现问题用的…
5种必会的Java异步调用转同步的方法你会几种
同步调用:调用方在调用过程中,持续等待返回结果。 异步调用:调用方在调用过程中,不直接等待返回结果,而是执行其他任务,结果返回形式通常为回调函数。 其实,两者的区别还是很明显的,这里也不再细说,我们主要来说一下Java如何将异步调用转为同步。换句话说,就是需要在异步调用过程中,…
源码|并发一枝花之ReentrantLock与AQS(1):lock、unlock
显示锁ReentrantLock的内部同步依赖于AQS(AbstractQueuedSynchronizer),因此,分析ReentrantLock必然涉及AQS。 本文假设读者已熟练掌握AQS的基本原理(参考AQS的基本原理),通过分析ReentrantLock#lock()…
Java 进阶-多线程开发关键技术
本文将介绍 Java 多线程开发必不可少的锁和同步机制,同时介绍 sleep 和 wait 等常用的暂停线程执行的方法,并详述 synchronized 的几种使用方式,以及 Java 中的重入锁(ReentrantLock)和读写锁(ReadWriteLock),之后结合实例分析了重入锁条件变量(Condition)的使用技巧,最后介绍了信号量(Semaphore)的适用场景和使用技巧。