自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 共享多核系统的缓存一致性

浅谈CPU缓存一致性问题、MESI协议、伪共享

2022-06-12 12:47:16 728

原创 浅谈JMM&Volatile&Synchronized

JMM基础知识以及Volatile、Synchronized浅谈

2022-06-12 12:26:19 324

原创 JVM运行时数据区及作用

JVM运行时内存数据分区及作用

2022-06-12 12:08:56 264

原创 Java中的SPI机制简介

总的来说Java中的SPI机制,(ServiceProviderInterface)服务发现机制,它会根据默认配置去加载配置中的类。在SPI的规定中,在Resource目录下建一个META-INF/services/的文件夹,新建一个文件以你自定义接口的权限定名命名,文件中填写你对这个接口的实现类的权限定名。通过java中的SPI机制就会去找到这个配置文件并实例化里面的实现类...

2020-10-22 19:36:16 120

原创 Java Annotation(注解)简述

此片文章只是说明一下注解的一些基本组成和一些参数,然后举个自定义注解的例子1.Java的Annotation主要由三个部分组成,Annotation. ElementTyp. RetentionPolicy2.Annotation接口当你自定义注解的时候一定会用到@interface ,这个就表示你自定义的这个接口继承了Annotation接口,它的源码中声明了几个方法,有兴趣可以看一下源码3.ElementType它是一个枚举类,里面有10个枚举值(jdk1.8)...

2020-10-02 13:38:06 126

原创 Java IO使用简略说明,字节流向字符的转换

这里只说明一些字节流和字符流的的使用和区别1.输入流和输出流的区分很简单就是针对程序内存而言,就是也内存为参照物,将数据从外设(磁盘、缓冲区、管道)向程序内存读,就是输入流(input);将程序内存中的数据写入到外设中,就是输出流。2.字节流与字符的转换很简单,就是生成一个字节数组bytes,然后使用字节流的read方法,将数据读取到数组中,然后new String(bytes) ,得到的String对象就是读取到的字节流。字符转为字节之后用String的getBytes方法就行,得到.

2020-10-01 12:55:39 167

原创 结合ReentrantLock获得锁分析AQS,lock过程分析

此篇文章只分析了ReentrantLock对象获得锁的一个过程。既然是结合ReentrantLock分析AQS,首先说明一下ReentrantLock的基本组成。RenntrantLock中有一个静态抽象内部类Sync,它继承了AbstractQueuedSynchronizer也就是AQS,Sync中有一个抽象方法lock()和一个已经实现的方法 nonfairTryAcquire。 RenntrantLock中有一个成员变量sync,用于引用具体的锁对象。 Reentrant...

2020-09-29 22:21:54 93

原创 Java 基本引用类型

Java基本引用类型强引用 Java默认就是强引用,一般声明的变量都是强引用,只要强引用存在,也就是强引用的这个对象在GC的可达性分析中是可达的,那么这个对象就一直不会被回收,即使JVM抛出 OutOfMemoryError(OOM)也不会回收Object strongReference = new Object(); // 强引用软引用 软引用主要用来声明一些非必要但是有用的对象,特点就是只要JVM中的heap的内存是足够的,在GC的时候是不会...

2020-09-21 18:19:06 78

原创 zookeeper搭建集群及配置文件、可能遇到的错误的解决办法

系统配置: Ubuntu20.04、zookeeper3.5.4安装zookeeper: zookeeper是依赖于jdk的,所以虚拟机中要用jdk环境,上述版本的jdk依赖是jdk1.8,注意是Oracle的jdk,如果是openJdk,可能会出现在启动zookeeper的时候nio包下面的一个方法找不到,导致启动不了。 安装zookeeper的指令:apt install zookeeper (注意权限问题)、 安装好之后,有几个目录需要注意...

2020-09-17 17:56:24 536

原创 Java 单列模式 懒汉饿汉 双重锁问题

1.饿汉模式//饿汉单例模式//线程安全 调用效率高 不能延迟加载public class SingletonHungry { //私有化构造器---不能再外部生成该类的对象,只用通过指定的接口才能得到 private SingletonHungry() { }; //提供静态成员变量,在类加载的时候初始化 private static SingletonHungry...

2020-04-19 10:52:01 546

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除