- 博客(6)
- 资源 (14)
- 收藏
- 关注
转载 什么是双亲委派模型?违背双亲委派模型?
一、先从类加载器讲起 对于任意一个类,被同一个类加载器加载后都是唯一的,但如果被不同加载器加载后,就不是唯一的了。即使是源于同一个Class文件、被同一个JVM加载,只要加载类的加载器不同,那么类就不同。 下面我们写一个不同类加载器加载后的类,看一下对instanceof关键字运算有什么影响: public class OneMoreStudy { public static void main(String[] args) throws Exception { C...
2020-07-12 21:02:01 619
原创 关键字volatile的作用
volatile关键字一般在多线程下使用,主要体现在一下几个方面: 1、保证线程之间的可见性 线程之间的可见性就要从java的内存模型来分析了,每个线程都有自己的栈空间,java的变量都是存储在主内存中的,主内存是共享区域,所有的子线程都是可以访问的,但每个线程之间的栈空间都是不可见,线程对变量的操作只能从主内存中拷贝到自己的栈空间,不能直接操作主内存中的变量,各个栈空间都有自己的变量副本拷贝,所以各个栈空间之间是无法访问对方的栈空间的,只有对变量操作的时候才会去主内存中拷贝 vola...
2020-07-11 10:54:15 428
原创 CAS底层原理
CAS是什么? CAS全称Compare-And-Swap,它是一条CPU并发原语。它的作用是判断内存的某个位置的值是否为预期值,如果是则改为新值,在这个过程中是原子性的。 sum.misc.Unsafe类中有多个方法被native关键字标记,这说明该方法是原生态的方法,它是一个调用非java语言的接口,也就是说这个接口的实现是其他语言实现的。 CAS并发原语就是体现在java的sum.misc.Unsafe类中的各个方法,调用这个类中的CAS方法JVM就会通过其他语言生成若干条系统指令,完...
2020-05-24 10:35:59 298
原创 Linux上安装MySQL
版本: Linux:CentOS7 MySQL:mysql-5.7.29-1.el7.x86_64.rpm-bundle 一、离线安装 1、上传MySQL到Linux上(位置/opt) 2、解压上传的安装包 创建解压文件夹 mkdir /opt/mysql 解压 tar -xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar -C ...
2020-04-01 22:44:53 149
原创 Linux上安装JDK
版本: Linux:CentOS7 JDK:jdk1.8 一、离线安装 1、上传jdk1.8到Linux上(目录位置 /opt) 2、解压上传的JDK(此次解压的路径是 /usr/local) tar -zxvf jdk-8u211-linux-x64.tar.gz -C /usr/local 3、编辑/etc/profile文件 vim /etc/profile 4...
2020-03-28 10:58:32 115
xftp和xshell官方最新版
2020-04-28
IntelliJ IDEA中的Eclipse快捷键插件
2019-02-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人