首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
lyowish
掘友等级
高级开发工程师
|
蚂蚁金服
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
26
文章 22
沸点 4
赞
26
返回
|
搜索文章
赞
文章( 22 )
沸点( 4 )
死磕java concurrent包系列(四)基于AQS的条件队列彻底理解ArrayBlockingQueue
peek():获取但不移除此队列的头;如果此队列为空,则返回 null。 这就是阻塞队列基本的增删查方法,接下来我们看一下如何使用它。 ArrayBlockingQueue中的元素存在公平访问与非公平访问的区别,对于公平访问队列,被阻塞的线程可以按照阻塞的先后顺序访问队列,即先…
这一文让你彻底理解Spring框架的意义
Spring作为java应用中最强大的框架,拥有着无比替代的地位,很多人只知道它好,听说过IOC、DI 解耦等。这篇文章会以最通俗的说法分析、理解Spring的意义 领导有一天突然发现,我们的UserService中的listUsers写的不够好,没有另外一个小组编写的User…
死磕java concurrent包系列(三)基于ReentrantLock理解AQS的条件队列
上一篇我们讲了AQS中的同步队列队列,现在我们研究一下条件队列。 在java中最常见的加锁方式就是synchorinzed和Reentrantlock,我们都说Reentrantlock比synchorinzed更加灵活,其实就灵活在Reentrantlock中的条件队列的用法…
死磕java concurrent包系列(二)基于ReentrantLock理解AQS同步队列的细节和设计模式
之前介绍过并发问题的解决方式就是一般通过锁,concurrent包中最重要的接口就是lock接口,它可以显示的获取或者释放锁,对于lock接口来说最常见的实现就是ReetrantLock(可重入锁),而ReetrantLock的实现又离不开AQS。 https://juejin…
死磕java concurrent包系列(一)从乐观锁、悲观锁到AtomicInteger的CAS算法
这篇文章主要是为了让大家通过乐观锁和悲观锁出发,理解CAS算法,因为CAS是整个Concurrent包的基础。 悲观锁:悲观的认为自己在使用数据的时候一定有别的线程来修改数据,因此在获取数据的时候会先加锁,确保数据不会被别的线程修改。Java中,synchronized关键字和…
详细介绍Spring Boot + RabbitMQ实现延迟队列
顾名思义,延迟队列就是进入该队列的消息会被延迟消费的队列。而一般的队列,消息一旦入队了之后就会被消费者马上消费。 延迟队列多用于需要延迟工作的场景。最常见的是以下两种场景: 延迟消费。比如: 用户生成订单之后,需要过一段时间校验订单的支付状态,如果订单仍未支付则需要及时地关闭订…
基于Groovy的规则脚本引擎实战
互联网时代随着业务的飞速发展,迭代和产品接入的速度越来越快,需要一些灵活的配置。办法通常有如下几个方面: 1、最为传统的方式是java程序直接写死提供几个可调节的参数配置然后封装成为独立的业务模块组件,在增加参数或简单调整规则后,重新调上线。 引入规则脚本对业务进行抽象可大大提…
搞定计算机网络面试,看这篇就够了(补充版)
相对与上一个版本的计算机网路面试知识总结,这个版本增加了 “TCP 协议如何保证可靠传输”包括超时重传、停止等待协议、滑动窗口、流量控制、拥塞控制等内容并且对一些已有内容做了补充。 学习计算机网络时我们一般采用折中的办法,也就是中和 OSI 和 TCP/IP 的优点,采用一种只…
下一页
个人成就
文章被点赞
658
文章被阅读
131,360
掘力值
3,391
关注了
99
关注者
355
收藏集
1
关注标签
1
加入于
2018-07-23