摘要: 概念 简介 线程池就是先创建一些线程,他们的集合称为线程池。 使用线程池,可以很好的提高性能,线程池再系统启动时即创建大量空闲的线程,程序奖一个任务传给线程池,线程池就会启动1条线程来执行此任务,执行结束后,线程不会死亡,而是再次返回线程池成为空闲状态,等待下一任务。 工作机制 1)在线程池的编程模 阅读全文
posted @ 2021-03-02 19:49 LonZyuan 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 概念 阻塞队列(BlockingQueue):支持2个附加操作的队列。阻塞队列常用于生产者和消费者的场景,生产者是往队列中添加元素的线程,消费者是从队列中获取元素的线程。 附加操作: 1)队列为空时,获取元素的线程会等待队列变为非空 2)队列为满时,存储元素的线程会等待队列可用。 种类 ArrayB 阅读全文
posted @ 2021-02-26 16:51 LonZyuan 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 概念 CAS(Compare And Swap 比较并交换),是 乐观锁 的一种典型实现机制。 乐观锁主要的两个步骤:冲突检测、数据更新。 当多个线程尝试使用CAS同时更新通过一个变量的时候,只有一个线程可以更新变量的值,其他线程都会失败,失败的线程不会被挂起,而是告知失败并可以再次尝试。 CAS操 阅读全文
posted @ 2021-02-25 16:21 LonZyuan 阅读(241) 评论(0) 推荐(0) 编辑
摘要: Volatile volatile是Java虚拟机提供的轻量级的同步机制 3大特性 1.保证可见性 当多个线程同时访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值 案例代码 import java.util.concurrent.TimeUnit; ​ class MyD 阅读全文
posted @ 2021-02-24 15:33 LonZyuan 阅读(615) 评论(0) 推荐(0) 编辑
摘要: 引言 Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。也可以使用 Stream API 来并行执行操作。简而言之,Stream 阅读全文
posted @ 2021-01-14 21:02 LonZyuan 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 引言:为了更好的使项目代码规范化,减少Bug的出现,因此最近引入了SonarQube来帮助检测代码问题,这里就分享部分有趣的规则。 注:因为保密原则,文章贴出来的代码都是我按照格式仿写的,并非公司源码。 一. Boxed value is unboxed and then immediately r 阅读全文
posted @ 2020-11-30 15:18 LonZyuan 阅读(2056) 评论(0) 推荐(0) 编辑
摘要: 前几天,在CodeReview的时候,看了一个同事代码有许多不好的地方, 虽然业务运行是OK的,但是能为了规范或是后续维护迭代,都应该注意一下部分问题。 注:因为保密原则,文章贴出来的代码都是我按照格式仿写的,并非公司源码。 1.命名随意 代码: List<UserDTO> list = new A 阅读全文
posted @ 2020-10-23 16:36 LonZyuan 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 现有一段代码: private JSONObject override(User user, UserVO vo) { String json = JSON.toJSONString(vo); JSONObject o = JSON.parseObject(json); JSONObject nam 阅读全文
posted @ 2020-10-13 17:43 LonZyuan 阅读(5258) 评论(0) 推荐(0) 编辑
摘要: 在7月中旬,我成功入职实习,通过进入公司,认识到了个人与企业巨大的差距,首先就是对于中间件的使用,ElasticSearch、Redis、Kafka等等,都是听过却从未使用过的,然而在任务下达之后,激励了学习动力,首先就是Redis。 网站 Redis官网:https://redis.io/ Red 阅读全文
posted @ 2020-08-28 11:56 LonZyuan 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 框架: SpringBoot+Mybatisplus+Shiro 简单介绍:关于写SpringBoot+Mybatisplus+Shiro项目的经验分享一:简单介绍 阿里云开放必要端口,mysql与tomcat 这里是使用宝塔来快速进行安装,xshell连接服务器成功后,输入以下命令(注意:必须Ce 阅读全文
posted @ 2020-06-13 09:13 LonZyuan 阅读(341) 评论(0) 推荐(0) 编辑