自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 happens-before & as-if-serial

在JMM中,如果一个操作执行的结果需要对另一个操作可见,这两个操作之间必需要存在happens-before关系,这两个操作既可以是一个线程之内,也可以是不同线程之间。4.传递性:如果A happens-before B 且B happens-before C,A happens-before C。1.程序顺序规则:对于单线程中的每个操作,前继操作happens-before于该线程中的任意后续操作。2.监视器锁规则:对于一个锁的解锁,happens-before于随后对这个锁的加锁。

2022-09-13 21:28:24 199 1

原创 重排序和数据依赖性

指编译器和处理器为了优化程序性能对指令进行重排序的一种手段。Java内存模型中,允许编译器和处理器对指令进行重排序,但是重排序可以保证最终执行的结果与程序顺序执行的结果一致。并且只会对不存在数据一致性的指令进行重排序。:如果两个操作访问同一个变量,且这两个操作有一个是写操作,此时这两个操作之间就存在数据依赖性。在重排序时,会遵循数据依赖性,编译器和处理器不会改变存在依赖关系的两个操作的执行顺序。

2022-09-13 21:06:21 360

原创 Java内存模型

JMM(Java内存模型):是一种符合内存模型规范,屏蔽了各种硬件和操作系统的访问差异,保证了Java程序在各种平台下对内存的访问都能保证效果一致机制和规范。

2022-09-12 17:24:28 218

原创 软件设计原则

1.开闭原则 /** * @ClassName: IPatient * @Description: 病人接口 * @Author: mszhou * @Date: 2021/6/4 17:05 * @Version: 1.0 **/ public interface IPatient { /** * 姓名 * @return */ public String getName(); /** * 服药费用 * @param m.

2021-06-05 16:18:37 176

原创 关于后端传入Long类型id,导致long精度丢失

问题出现如下: 可以看出cid后面几位缺失。 解决方案如下: SpringBoot加入如下代码配置: @EnableWebMvc @Configuration public class WebJsonConverterConfig extends WebMvcConfigurerAdapter { @Override public void configureMessageConverters(List<HttpMessageConverter<?>>

2021-03-10 17:44:59 240

原创 FastDfs文件系统搭建(单机版)

一、系统环境 centos7 服务器 二、软件安装包 三、安装步骤 1. 安装gcc yum -y install gcc 2. 安装解压命令unzip yum install -y unzip zip 3. 安装libevent yum -y install libevent 4. 安装libfastcommon-master 解压刚刚上传的libfastcommon-master.zip unzip libfastcommon-master.zip 进入解压..

2021-01-23 17:46:41 273

空空如也

空空如也

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

TA关注的人

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