摘要: wait/notify之虚假唤醒(二) 一:sleep和wait的区别 讲这个虚假唤醒之前先来详细说明sleep和wait之间的区别 1:sleep是Thread线程类中的方法,为wait是Object类中的方法 2:sleep方法不会释放锁,但是wait会释放锁 3:sleep可以单独放在很多地方 阅读全文
posted @ 2020-06-22 13:33 Cloverlove 阅读(376) 评论(0) 推荐(1) 编辑
摘要: Transactional失效的场景 一:spring的事务管理 讲解Transactional之前先来聊聊spring的事务。 1:什么是事务? 答:事务是一组操作,这组操作要么全部完成,要么全部失败。 2:事务的特性? 答:ACID四种 原子性 (Atomicity) : 事务是一个原子操作,由 阅读全文
posted @ 2020-06-21 23:08 Cloverlove 阅读(627) 评论(0) 推荐(0) 编辑
摘要: ArrayList扩容机制的源码详解 一:ArrayList的构造函数: ArrayList的构造函数源码有三种: 先来看看ArrayList底层定义的一些变量的含义: /** Default initial capacity * 默认的容量大小 */ private static final in 阅读全文
posted @ 2020-06-17 22:49 Cloverlove 阅读(929) 评论(0) 推荐(0) 编辑
摘要: ​ vue之.native的作用 先描述一下自己开发中遇到的问题: 最近在构建vue页面的时候,用到了输入框的enter事件,一开始@keyup.enter并没有加.native,所以这个enter事件总是不起作用。 但是这种情况就可以不使用.native,因为是普通组件,不是自定义的组件。 为什么 阅读全文
posted @ 2020-06-17 09:55 Cloverlove 阅读(808) 评论(0) 推荐(0) 编辑
摘要: 一:JVM运行时内存 1.1:如何判断一个对象生存状态 1.1.1:引用计数法 在其内部维护着一个计数器,当只要还有对象引用当前对象,计数器就加1,如果不为0,就证明该对象依然存活,如果为0,则证明没有对象引用该对象,那么该对象就是已经死了。但是会存在问题是存在互相引用,但是又是垃圾的对象的情况 1 阅读全文
posted @ 2020-05-05 00:36 Cloverlove 阅读(147) 评论(0) 推荐(0) 编辑
摘要: Java中的线程池 一、线程池的底层原理 1.1 先来了解一下原理 先放一张图片上来,看看线程池工作的核心步骤 1:)当任务提交的时候,先判断核心线程池是否已经满了,如果没有满,则直接创建线程执行任务 2:)如果核心线程池满了,则会把多余的任务放在我们定义的阻塞队列中,判断阻塞队列是否已经满了 3: 阅读全文
posted @ 2020-04-14 22:56 Cloverlove 阅读(260) 评论(0) 推荐(0) 编辑
摘要: java中的并发工具类 一:等待多线程完成的CountDownLatch CountDownLatch允许一个或多个线程等待其他线程完成操作。 package com.fuzhulei;import java.util.concurrent.*;​/** * 减法计数器,主要是countDown(计 阅读全文
posted @ 2020-04-05 22:36 Cloverlove 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 虚假唤醒的概念 jdk官方文档解释: 所以说在wait和notify一块使用时,如果使用if作为条件时,会有虚假唤醒的情况发生,所以必须使用while作为循环条件。下面来举例实验: 首先,创建一个资源类:(在多线程中,一般都是资源类和线程操作解耦,不放在用同一个类中,只有在线程操作资源类时,才会创建 阅读全文
posted @ 2020-04-01 23:39 Cloverlove 阅读(1520) 评论(0) 推荐(2) 编辑
摘要: BeanFactory:是用来给具体的IOC容器的实现提供了规范,实现了BeanFactory的接口类表明此类是一个工厂,主要负责初始化各种Bean,并调用他们的生命周期方法。该接口也是IOC容器的顶级接口。 FactoryBean:是一种工厂bean,可以返回bean的实例,可以通过实现该接口对b 阅读全文
posted @ 2020-03-26 21:23 Cloverlove 阅读(779) 评论(0) 推荐(0) 编辑
摘要: 在springBoot中有以下两种配置文件,applciation(.yml或.properties)以及bootstrap(.yml或properties)。 1:加载顺序的区别: bootstrap.yml(bootstrap.properties)先加载 application.yml(app 阅读全文
posted @ 2020-03-24 09:12 Cloverlove 阅读(928) 评论(0) 推荐(0) 编辑