你这个感觉把状态和事件混在一起了
利用状态机处理订单状态流转首先简述一个场景,订单的状态流转。 一个订单会有很多种状态:临时单、已下单、待支付、已支付、已完成、退款中等等。每一种状态都和其扭转前的状态、在扭转前状态所执行的操作有关。 ...
你这个感觉把状态和事件混在一起了
利用状态机处理订单状态流转首先简述一个场景,订单的状态流转。 一个订单会有很多种状态:临时单、已下单、待支付、已支付、已完成、退款中等等。每一种状态都和其扭转前的状态、在扭转前状态所执行的操作有关。 ...
"强制把写缓冲区/高速缓存中的脏数据等写回主内存,让缓存中相应的数据失效"
这里的高速缓存为什么会有脏数据呢? 不是通过MESI协议已经保证了吗
内存屏障内存屏障(Memory barrier) 为什么会有内存屏障 每个CPU都会有自己的缓存(有的甚至L1,L2,L3),缓存的目的就是为了提高性能,避免每次都要向内存取。但是这...
太牛逼了,一直没明白为什么有了mesi还要volatile,现在终于明白了
【Java并发学习二】多线程编程的硬件基础知识总结这篇简单梳理下与多线程相关的硬件知识,了解它们能够让我们更清晰的了解多线程工作的本质,以及关键字synchronized、volatile、final的实现原理。 我们会发现...
一.相关概念 什么是常量用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。 Clas...
java8中,运行时常量池已经迁移到堆区了
深入理解JVM(1) : Java内存区域划分Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来。 Java虚拟机在执行Java程序的过程中会把它管理的内存划分为...
Optional 网上随便搜了几篇文章,抄来抄去。
Java8 Optional 的正确使用方式1.当我们还在以如下几种方式使用 Optional 时, 就得开始检视自己了 调用 isPresent() 方法时 调用 get() 方法时 Optional 类型作为类/实...
```
public String() {
this.value = "".value;
}
```
你难道没发现这个构造方法很奇怪吗?
为什么没有报编译错误
Java 源码分析 — String 的设计Tip:笔者马上毕业了,准备开始 Java 的进阶学习计划。于是打算先从 String 类的源码分析入手,作为后面学习的案例。这篇文章寄托着今后进阶系列产出的愿望,希望能坚持...
刚刚试了一下,在 master 分支下无法执行 hexo 命令, 难道是我理解错了?
Hexo博客备份使用Hexo在github搭建的博客,博客作为一个单独的GitHub仓库存在,但是这个仓库只有生成的静态网页文件,并没有Hexo的源文件,如果要换电脑或者重装系统后,就比较麻...
创建两个分支,master 和 hexo。
修改完文章后,在 hexo 分支提交源文件; 然后切换到 master 分支上执行 hexo g -d ,它会自动更新 github 上的静态文件。
Hexo博客备份使用Hexo在github搭建的博客,博客作为一个单独的GitHub仓库存在,但是这个仓库只有生成的静态网页文件,并没有Hexo的源文件,如果要换电脑或者重装系统后,就比较麻...