摘要:61. 旋转链表 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 阅读全文
posted @ 2021-02-25 20:24 天乔巴夏丶 阅读(18) 评论(0) 推荐(0) 编辑
摘要:Semaphore概述及案例学习 Semaphore信号量用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理地使用公共资源。 public class SemaphoreTest { private static final int THREAD_COUNT = 30; privat 阅读全文
posted @ 2021-02-21 20:07 天乔巴夏丶 阅读(79) 评论(0) 推荐(1) 编辑
摘要:CyclicBarrier概述 CyclicBarrier可以理解为Cyclic + Barrier, 可循环使用 + 屏障嘛。 之所以是Cyclic的,是因为当所有等待线程执行完毕,并重置CyclicBarrier的状态后它可以被重用。 之所以叫Barrier,是因为线程调用await方法后就会被 阅读全文
posted @ 2021-02-20 21:01 天乔巴夏丶 阅读(64) 评论(0) 推荐(1) 编辑
摘要:CountDownLatch概述 日常开发中,经常会遇到类似场景:主线程开启多个子线程执行任务,需要等待所有子线程执行完毕后再进行汇总。 在同步组件CountDownLatch出现之前,我们可以使用join方法来完成,简单实现如下: public class JoinTest { public st 阅读全文
posted @ 2021-02-20 12:16 天乔巴夏丶 阅读(177) 评论(0) 推荐(4) 编辑
摘要:ScheduledThreadPoolExecutor概述 我们在上一篇学习了ThreadPoolExecutor的实现原理:Java并发包源码学习系列:线程池ThreadPoolExecutor源码解析 本篇我们来学习一下在它基础之上的扩展:ScheduledThreadPoolExecutor。 阅读全文
posted @ 2021-02-19 20:10 天乔巴夏丶 阅读(130) 评论(0) 推荐(3) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-02-10 22:05 天乔巴夏丶 阅读(128) 评论(0) 推荐(1) 编辑
摘要:非阻塞并发队列ConcurrentLinkedQueue概述 我们之前花了很多时间了解学习BlockingQueue阻塞队列接口下的各种实现,也大概对阻塞队列的实现机制有了一定的了解:阻塞 + 队列嘛。 而且其中绝大部分是完全基于独占锁ReentrantLock和条件机制condition实现的并发 阅读全文
posted @ 2021-02-06 17:23 天乔巴夏丶 阅读(166) 评论(0) 推荐(0) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-02-03 22:19 天乔巴夏丶 阅读(54) 评论(0) 推荐(0) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-02-02 23:41 天乔巴夏丶 阅读(116) 评论(0) 推荐(2) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-02-01 19:50 天乔巴夏丶 阅读(116) 评论(0) 推荐(3) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-30 16:42 天乔巴夏丶 阅读(92) 评论(0) 推荐(1) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-28 21:11 天乔巴夏丶 阅读(98) 评论(0) 推荐(1) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-28 12:59 天乔巴夏丶 阅读(210) 评论(0) 推荐(3) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-27 16:27 天乔巴夏丶 阅读(149) 评论(0) 推荐(1) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-26 18:53 天乔巴夏丶 阅读(151) 评论(0) 推荐(2) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-23 18:20 天乔巴夏丶 阅读(118) 评论(0) 推荐(1) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-17 20:22 天乔巴夏丶 阅读(140) 评论(0) 推荐(1) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-17 02:27 天乔巴夏丶 阅读(143) 评论(2) 推荐(2) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 Java并发包源码学习系列:ReentrantLock可重入独占锁详解 阅读全文
posted @ 2021-01-15 23:06 天乔巴夏丶 阅读(102) 评论(0) 推荐(2) 编辑
摘要:系列传送门: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 Java并发包源码学习系列:AQS共享式与独占式获取与释放资源的区别 基本用法介绍 ReentrantLock位于java.util.con 阅读全文
posted @ 2021-01-11 00:16 天乔巴夏丶 阅读(188) 评论(0) 推荐(2) 编辑
摘要:Java并发包源码学习系列:AQS共享模式获取与释放资源 往期回顾: Java并发包源码学习系列:AbstractQueuedSynchronizer Java并发包源码学习系列:CLH同步队列及同步资源获取与释放 上一篇文章介绍了AQS内置队列节点的出队入队操作,以及独占式获取共享资源与释放资源的 阅读全文
posted @ 2021-01-09 00:53 天乔巴夏丶 阅读(140) 评论(0) 推荐(1) 编辑
摘要:本篇学习目标 回顾CLH同步队列的结构。 学习独占式资源获取和释放的流程。 CLH队列的结构 我在Java并发包源码学习系列:AbstractQueuedSynchronizer#同步队列与Node节点已经粗略地介绍了一下CLH的结构,本篇主要解析该同步队列的相关操作,因此在这边再回顾一下: AQS 阅读全文
posted @ 2021-01-07 01:34 天乔巴夏丶 阅读(171) 评论(0) 推荐(2) 编辑
摘要:本文基于JDK1.8 本篇学习目标 了解AQS的设计思想以及重要字段含义,如通过state字段表示同步状态等。 了解AQS内部维护链式双向同步队列的结构以及几个重要指针。 了解五种重要的同步状态。 明确两种模式:共享模式和独占模式。 学习两种模式下AQS提供的模板方法:获取与释放同步状态相关方法。 阅读全文
posted @ 2021-01-05 22:27 天乔巴夏丶 阅读(222) 评论(0) 推荐(2) 编辑
摘要:Optional概述 Optional 是个容器:它可以保存类型T的value,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测,很好地解决了空指针异常处理的问题,比如可以使用isPresent()方法判断value是否为null,使用get()方法获取val 阅读全文
posted @ 2021-01-04 00:34 天乔巴夏丶 阅读(302) 评论(2) 推荐(2) 编辑
摘要:NIO是啥? NIO是Java从JDK1.4开始引入的一系列改进版输入输出处理手段,也就是New IO,简称NIO,也有说法叫NonBlocking IO,是同步非阻塞式的IO模型,准确地说它支持阻塞非阻塞两种模式。 笔者在NIO、BIO、AIO、同步异步、阻塞非阻塞傻傻分不清楚?一文中详细总结了同 阅读全文
posted @ 2021-01-03 14:16 天乔巴夏丶 阅读(35) 评论(0) 推荐(1) 编辑
摘要:以下内容摘自:敖丙肝了一个月的Netty知识点 阻塞与非阻塞 阻塞和非阻塞操作是针对发起的IO请求操作后是否立刻返回一个标志信息而不让请求线程等待,当数据准备未完成时,请求线程的状态: 阻塞:往往需要等待缓冲区中的数据准备好过后才处理其他的事情,否则一直等待在那里。 非阻塞:无论数据是否准备好,都会 阅读全文
posted @ 2021-01-02 16:53 天乔巴夏丶 阅读(53) 评论(0) 推荐(0) 编辑
摘要:本篇要点 简单描述浮点数十进制转二进制精度丢失的原因。 介绍几种创建BigDecimal方式的区别。 整理了高精度计算的工具类。 学习了阿里巴巴Java开发手册关于BigDecimal比较相等的规定。 经典问题:浮点数精度丢失 精度丢失的问题是在其他计算机语言中也都会出现,float和double类 阅读全文
posted @ 2020-12-28 22:36 天乔巴夏丶 阅读(352) 评论(3) 推荐(4) 编辑
摘要:本文侧重SpringBoot与Quartz的整合,Quartz的基本入门概念不清楚的小伙伴可以看看这篇文章:任务调度框架Quartz快速入门! 本篇要点 介绍SpringBoot与Quartz单机版整合。 介绍Quartz持久化存储。 SpringBoot与Quartz单机版快速整合 学习完非Spr 阅读全文
posted @ 2020-12-27 00:36 天乔巴夏丶 阅读(586) 评论(0) 推荐(4) 编辑
摘要:Quartz是什么 Quartz是一个功能强大的开源任务调度库,几乎可以集成到任何Java应用程序中,无论是超小型的独立应用还是超大型电子商务系统。 它常用于企业级应用中: Driving Process Workflow:当新订单下达,可以安排一个30分钟内触发的任务,检查订单状态。 System 阅读全文
posted @ 2020-12-26 14:47 天乔巴夏丶 阅读(743) 评论(0) 推荐(3) 编辑
摘要:官方文档:http://kafka.apache.org/23/documentation.html#introduction 中文文档:https://kafka.apachecn.org/ 本篇要点 介绍kafka的特性、概念、API及专业术语。 介绍Windows环境下kafka的安装配置,启 阅读全文
posted @ 2020-12-26 00:04 天乔巴夏丶 阅读(325) 评论(0) 推荐(4) 编辑