java
gump12138
这个作者很懒,什么都没留下…
展开
-
乐观锁的原理CAS
CAS( Compare-And-Swap)“比较并交换”(乐观锁的原理)CAS 的特点是避免使用互斥锁,当多个线程同时使用 CAS 更新同一个变量时,只有其中一个线程能够操作成功,而其他线程都会更新失败。更新失败的线程并不会被阻塞,而是被告知这次由于竞争而导致的操作失败,但还可以再次尝试。CAS 的思路CAS 相关的指令是具备原子性的CAS 有三个操作数:内存值 V、预期值 A、要修改的值 B。核心思路:仅当预期值 A 和当前的内存值 V 相同时,才将内存值修改为 B。下面我们用图解和例子的原创 2020-07-14 15:00:31 · 370 阅读 · 0 评论 -
JAVA的内存模型
JAVA内存模型JVM 内存结构和 Java 虚拟机的运行时区域有关;Java 内存模型和 Java 的并发编程有关。JVM内存模型6个区域堆区(Heap):堆是存储类实例和数组的,通常是内存中最大的一块。实例很好理解,比如 new Object() 就会生成一个实例;而数组也是保存在堆上面的,因为在 Java 中,数组也是对象。虚拟机栈(Java Virtual Machine Stacks):它保存局部变量和部分结果,并在方法调用和返回中起作用。方法区(Method Area):它存储原创 2020-07-13 19:31:33 · 441 阅读 · 0 评论 -
阻塞队列-BlockingQueue
阻塞队列public interface BlockingQueue extends Queue{…}[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3QtabpFM-1594633540746)(C:\Users\zhangzhicheng\AppData\Roaming\Typora\typora-user-images\image-20200713171249304.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vi7rTE原创 2020-07-13 17:46:24 · 263 阅读 · 0 评论 -
Quartz简单入门
Quartz简单入门1、依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId></dependency>2、使用package org.sang.quartz;import org.springframework.stereotype.Co原创 2020-07-01 18:03:19 · 135 阅读 · 0 评论 -
SpringBoot集成Redis
SpringBoot集成Redis1、依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <exclusions> <exclusion> <groupId>io.lettuce<原创 2020-07-01 17:54:51 · 114 阅读 · 0 评论 -
Docker简单入门
Docker1、简介Docker是一个开源的应用容器引擎;是一个轻量级容器技术;Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;运行中的这个镜像称为容器,容器启动是非常快速的。docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);docker客户端(Client):连接docker主机进行操作;docker仓库(Registry):用来保存各种打包好的软件镜像;docker镜像(原创 2020-07-01 17:30:50 · 99 阅读 · 0 评论