- 博客(10)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 volatile的底层原理
一.线程间可见public class VolatileTest { private static boolean flag = true; public static void main(String[] args) throws InterruptedException { new Thread(() -> { while (flag) { //do sth }
2020-07-05 17:31:49
315
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 synchronized锁升级过程和实现原理
一.synchronized升级过程在最开始JDK1.0,1.2的时候,synchronized就是重量级锁,后来JDK对synchronized进行了一系列优化,这个优化就是有个升级过程。这个升级过程被markword清晰地进行了记录。整个锁升级的过程大概分为:new-->偏向锁-->轻量级锁(无锁,自旋锁,自适应自旋)-->重量级锁我们结合下面这张图具体谈一下从刚刚new出来的时候,首先上的是偏向锁,出现争用,升级为轻量级锁,竞争状态变得特备激烈,变为重量级锁。
2020-07-04 18:42:25
2215
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java对象在内存中的内存布局
一.Java对象的内存占用大小为了方便在程序中看到java对象内存布局,我们可以在maven中添加jol-core依赖<dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</artifactId> <version>0.9</version></dependency>首先我们看下最简单的Object对象是怎么
2020-07-02 19:41:58
4844
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 CountDownLatch应用场景实践
一.CountDownLatch介绍 CountDownLatch是一个并发工具类,作用是允许一个或多个线程等待其他线程完成操作。我们有时会称之为发令枪。有一个个形象的例子能说明其功能:公司召开一个全体股东会,需要所有股东到场了才能正式开始。会议室准备了一个花名册,记录了需要到会的总人数,每一个股东来到会议室就要签名确认,同时总人数减一,当需要到会的总人数为0时,会议就正式开始。所以,CountDownLatch就有充当计数器和发令枪的功能。二.结合ExecutorService实现...
2020-07-02 14:33:47
304
原创 intellij idea 常用快捷键
快速开发 Ctrl + alt +B 查找接口的实现类 Ctrl+U 转到父类 Ctrl+I 实现方法 Ctrl+F12 可以显示当前文件的结构 查看该类有哪些方法 Ctrl+N 可以快速打开类 Ctrl+Shift+N 可以快速打开文件 Alt+Q...
2020-09-05 00:11:14
209
原创 Spring源码探析之IOC
一.源码的简单设计思想:对象谁创建的?->Spring容器对象如何创建?Spring是随随便便创建对象吗?不是这就是BeanDefinition在解析xml文件或解析注解时,方式肯定是不一样的,能不能给出一个抽象层?这便是读取器当我们容器有这些bean定义信息,紧接着就可以做bean的对象实例化当一个对象创建完成后,它经历了几个过程?一般我们描述中直接就说实例化,但实际包含两个步骤在bean定义信息到BeanFactory的中间是
2020-09-01 00:07:14
152
原创 Vue子组件向父组件传值的几种方式
一. 使用slot插槽1.子组件:<template> <div> <slot name="icon" :text="text"></slot> </div></template><script> export default{ data(){ return {...
2019-06-24 14:57:34
9300
4
原创 Docker for windows 打包制作java镜像
Docker for windows安装链接:https://oomake.com/download/docker-windows1.构建Spring Boot项目创建一个 DockerController,在其中有一个index()方法,访问时返回:Hello Docker!package com.docker.hellodocker.controller;import or...
2019-04-17 17:06:05
3578
3
原创 jquery的end()用法及错误示例
常用场景:某元素find()它下面的子元素进行绑定某事件,然后使用end(),返回该元素,可继续find()它下面其他的子元素.....$container.find('.tag-management').on('click', function () { ...... }).end().find('.checkbox').on('...
2018-11-27 14:13:44
228
原创 微信小程序上拉加载更多的项目实例以及scroll-view标签的使用
近来团队让写一个小程序项目,在写某个模块首页列表时,打算采用分页方式请求后台,下拉加载更多。用到官方的一个关键标签 scroll-view。代码如下:一.在wxml文件中:<view class='tipsbar'>共有{{total}}个待签收批次</view><view class="navigator-box"><scroll-...
2018-11-09 15:14:33
1945
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人