
线程与高并发
java线程、juc、线程锁问题处理
zhouyunjian
这个作者很懒,什么都没留下…
展开
-
反射以及动态代理深入研究以及对现有销售平台项目的改进思考
反射概念、作用 反射应用场景 反射缺点 反射机制 反射常见类介绍 反射使用实例 动态代理概念以及应用 动态代理实例 在公司实际项目中的应用与思考 反射概念、作用概念:java程序编译后,在jvm虚拟机进行记载,在程序运行时刻,可通过虚拟机找到对应的类,以及其下的所有属性、以及方法,并能够动态执行其方法。这种动态获取信息以及动态调用方法的功能就叫做反射作用:通过反射机制,可以在运行时访问 ...原创 2020-07-05 10:42:44 · 173 阅读 · 0 评论 -
JUC高并发-CAS
定义与原理COMPARE AND SWAP ,比较并替换;比较如果为预期值,则按设定值进行替换实例演示实例1、SWAP实例演示private static void test01() {//初始化默认值为0AtomicInteger inte=new AtomicInteger();//变1inte.getAndIncrement();//...原创 2020-05-07 20:43:58 · 150 阅读 · 0 评论 -
JUC高并发-JMM与volatile关键字
定义JMM,全名为Java Memory Model,即Java内存模型。它是一组规范,需要各个JVM的实现来遵守JMM规范,它屏蔽了各种硬件和操作系统的内存访问差异,以实现Java程序在各个平台下都能达到一致的内存访问效果。不像C/C++那样直接访问物理硬件和操作系统的内存模型,它的主要目的是解决由于多线程通过共享内存进行通信时,存在的本地内存数据不一致、编译器会对代码重排序、处理器会对代码...原创 2020-05-03 14:26:28 · 201 阅读 · 0 评论 -
JUC高并发-常用辅助类
常用辅助类CountDownLatch:减法计数器,常用于多线程中统计多线程执行完的个数。多线程在执行时,阻塞;执行完后,执行主流程。 countDown 减法,-1 await ,阻塞 CyclicBarrier:加法计数器,用法与减法计数器类似。 直译为可循环使用(Cyclic)的屏障(Barrier)。它可以让一组线程到达一个屏障(同步点)时被阻塞,直到最后一个线...原创 2020-05-03 14:24:55 · 267 阅读 · 0 评论 -
juc高并发-forkJoin
forkJoin模型与原理定义与使用场景:在存在大数据量计算的情况之下,单线程效率较大,用到forkjoin模型,以提高计算效率模型与处理逻辑:1.先将一个大任务分解为多个小任务2.各个小任务处理完成后,再将各自结果汇总3.结果汇总前会等待其它任务完成。原理分析:工作窃取 底层维护的是一个双端队列;优点:工作效率高缺点:容易造成资源竞争如下图:B队列的...原创 2020-05-01 18:28:32 · 283 阅读 · 0 评论 -
JUC并发编程-函数式接口与Stream流计算
函数式接口定义函数式接口是jdk1.8之后出来的,在java.util.function下包。所谓函数式接口的定义是:接口内只定义一个抽象方法,则该接口称为函数式接口。函数式接口思想: “函数式编程”是一种编程的范式和编程的方法论(programming paradigm),它属于结构化编程的一种,主要的思想是把运算的过程尽量通过一组嵌套的函数来实现。优点:用更少的代码实现更多的...原创 2020-04-28 22:30:43 · 147 阅读 · 0 评论 -
Juc并发编程--阻塞队列分析
1.阻塞队列原理:队列规则:FIFO 先进先出栈: Stack, FILO 先进后出2.阻塞队列的几大实现类:3.阻塞场景分析:存------------取1.当队列满的时候,添加元素就会被阻塞2.当队列是空的,如果还要取就会被阻塞4.阻塞队列、set、List集合的接口关系:5.阻塞队列的四组api: ...原创 2020-04-19 13:54:05 · 264 阅读 · 0 评论 -
Juc并发编程-关于读写锁分析与问题思考
读写锁概念定义:读锁:共享锁,指多个线程可以同时占有锁,进行数据读取操作。写锁:独占锁,指同时只能单个线程占有锁,进行写操作。读写锁优点:提高线程读写效率读锁与写锁关系:可以多个线程同时读锁只能单个线程写锁读锁和写锁只能单个线程进行实例:/*** 文件名: com.example.demo.JucDemo - Demo6*...原创 2020-04-16 00:06:00 · 152 阅读 · 0 评论 -
Juc并发编程-同步与锁
Juc并发编程1、什么是JUCJUC:就是我们Java原生的并发包,和一些常用的工具类!学完之后,很多知识,但是不知道怎么去用!每学习一个知识点,学完之后,可以替换工作中用到的代码!2、线程基础知识回顾什么是进程和线程?进程:QQ.exe线程:打字、自动保存…..一个进程可以包含多个线程,一个进程至少有一个线程! Java程序至少有两个线程:...原创 2020-04-13 23:30:12 · 198 阅读 · 0 评论 -
基于队列的分析研究
本文主要介绍基于队列的分析研究,内容分为以下几大块: 队列的性质以及特点 队列的分类、使用方法、代码实战 高并发队列分析与压测报告 队列与设计模式的关联 交易系统的应用场景分析 bat面试中队列常见题 队列的性质以及特点Queue: 基本上,一个队列就是一个先入先出(FIFO)...原创 2019-06-02 11:05:02 · 1233 阅读 · 0 评论