杨玉杰|个人博客
主页
归档
分类
标签
关于
友情链接
单元测试之Mockito
官方资料:https://javadoc.io/doc/org.mockito/mockito-core/latest/org/mockito/Mockito.html 1、验证某些行为以List集合为例,实际测试用原本的实例代替 //导包 import static org.mockito.Mockito.*; //创造mock对象 List mockedList = mock(List.cl
2021-06-12
单元测试
单元测试
程序员必备小工具
TortoiseGit
2021-06-12
开发工具
Git
Git
IDEA常用配置
常用快捷键 Ctrl+Shift+Alt:按下这三个键,然后按下鼠标左键进行滑动,可以选中多行拉出一个矩形,方便对多行相同位置的相同字段进行修改操作; Alt+Enter:智能辅助键,https://zhuanlan.zhihu.com/p/74517566。 Alt+Insert:生成getter、setter方法,生成构造方法,重写父类方法。https://blog.csdn.net/weix
2021-06-08
开发工具
IDEA
IDEA
AbstractQueuedSynchronizer介绍
一、概述AbstractQueuedSynchronizer(以下简称AQS),又称队列同步器,作为java.util.concurrent包的基础,它提供了一套完整的同步编程框架,用来构建锁或者其他同步组件的基础框架,开发人员只需要实现其中几个简单的方法就能自由的使用诸如独占,共享,条件队列等多种同步模式。我们常用的比如ReentrantLock,CountDownLatch等等基础类库都是基于
2021-05-31
语言相关
Java进阶
Java并发
Java并发
线程池介绍
线程池的实现原理 当向线程池提交任务后,线程池会按下图所示流程去处理这个任务: 1、线程池判断核心线程池里的线程是否都在执行任务。如果不是,则创建一个新的工作线程来执行任务。如果核心线程池里的线程都在执行任务,则进入下个流程。 2、线程池判断工作队列是否已经满。如果工作队列没有满,则将新提交的任务存储在这个工作队列里。如果工作队列满了,则进入下个流程。 3、线程池判断线程池的线程是否都处于工作
2021-05-31
语言相关
Java进阶
Java并发
Java并发
ThreadLocal介绍
1、ThreadLocal是什么?ThreadLocal是啥?以前面试别人时就喜欢问这个,有些伙伴喜欢把它和线程同步机制混为一谈,事实上ThreadLocal与线程同步无关。ThreadLocal虽然提供了一种解决多线程环境下成员变量的问题,但是它并不是解决多线程共享变量的问题。那么ThreadLocal到底是什么呢? API是这样介绍它的: 该类提供了线程局部 (thread-local) 变量
2021-05-30
语言相关
Java进阶
Java并发
Java并发
ConcurrentHashMap
首先推荐下几篇不错的文章: 1、Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析 这篇文章要好好读一读,全文主要包括四个部分:Java7中的HashMap和ConcurrentHashMap以及Java8中的HashMap和ConcurrentHashMap,能够很清晰的认识到HashMap和ConcurrentHashMap之间的区别、Java8在哪些地方做出
2021-05-30
语言相关
Java进阶
Java并发
Java并发
Happens-Before原则
1、JMM的设计JMM设计时一方面要为程序员提供足够强的内存可见性保证;另一方面对编译器和处理器的限制要尽可能的放松,设计JMM时需要进行平衡。 【案例1】 double pi = 3.14; // A double r = 1.0; // B double area = pi * r *r; // C 上面计算圆的面积的示例代码存在3个happens-before关系,如下所示: 1、A
2021-05-30
语言相关
Java进阶
Java并发
Java并发
Fork/Join框架
1. 简介 Fork/Join并行方式是获取良好的并行计算性能的一种最简单同时也是最有效的设计技术。Fork/Join并行算法是我们所熟悉的分治算法的并行版本,典型的用法如下: Result solve(Problem problem) { if (problem is small) { directly solve problem }
2021-05-30
语言相关
Java进阶
Java并发
Java并发
Executor框架
Java中的线程即是工作单元也是执行机制,从JDK 5后,工作单元与执行机制被分离。工作单元包括Runnable和Callable,执行机制由JDK 5中增加的java.util.concurrent包中Executor框架提供。 1、Executor 框架简介1.1、Executor 框架的两级调度模型在 HotSpot VM 的线程模型中,Java线程(java.lang.Thread)被一对
2021-05-30
语言相关
Java进阶
Java并发
Java并发
1
2
3
4
…
11
Search
×
keyword