你這個(gè)感覺(jué)把狀態(tài)和事件混在一起了
利用狀態(tài)機(jī)處理訂單狀態(tài)流轉(zhuǎn)首先簡(jiǎn)述一個(gè)場(chǎng)景,訂單的狀態(tài)流轉(zhuǎn)。 一個(gè)訂單會(huì)有很多種狀態(tài):臨時(shí)單、已下單、待支付、已支付、已完成、退款中等等。每一種狀態(tài)都和其扭轉(zhuǎn)前的狀態(tài)、在扭轉(zhuǎn)前狀態(tài)所執(zhí)行的操作有關(guān)。 ...
你這個(gè)感覺(jué)把狀態(tài)和事件混在一起了
利用狀態(tài)機(jī)處理訂單狀態(tài)流轉(zhuǎn)首先簡(jiǎn)述一個(gè)場(chǎng)景,訂單的狀態(tài)流轉(zhuǎn)。 一個(gè)訂單會(huì)有很多種狀態(tài):臨時(shí)單、已下單、待支付、已支付、已完成、退款中等等。每一種狀態(tài)都和其扭轉(zhuǎn)前的狀態(tài)、在扭轉(zhuǎn)前狀態(tài)所執(zhí)行的操作有關(guān)。 ...
"強(qiáng)制把寫(xiě)緩沖區(qū)/高速緩存中的臟數(shù)據(jù)等寫(xiě)回主內(nèi)存,讓緩存中相應(yīng)的數(shù)據(jù)失效"
這里的高速緩存為什么會(huì)有臟數(shù)據(jù)呢? 不是通過(guò)MESI協(xié)議已經(jīng)保證了嗎
內(nèi)存屏障內(nèi)存屏障(Memory barrier) 為什么會(huì)有內(nèi)存屏障 每個(gè)CPU都會(huì)有自己的緩存(有的甚至L1,L2,L3),緩存的目的就是為了提高性能,避免每次都要向內(nèi)存取。但是這...
太牛逼了,一直沒(méi)明白為什么有了mesi還要volatile,現(xiàn)在終于明白了
【Java并發(fā)學(xué)習(xí)二】多線程編程的硬件基礎(chǔ)知識(shí)總結(jié)這篇簡(jiǎn)單梳理下與多線程相關(guān)的硬件知識(shí),了解它們能夠讓我們更清晰的了解多線程工作的本質(zhì),以及關(guān)鍵字synchronized、volatile、final的實(shí)現(xiàn)原理。 我們會(huì)發(fā)現(xiàn)...
一.相關(guān)概念 什么是常量用final修飾的成員變量表示常量,值一旦給定就無(wú)法改變!final修飾的變量有三種:靜態(tài)變量、實(shí)例變量和局部變量,分別表示三種類(lèi)型的常量。 Clas...
java8中,運(yùn)行時(shí)常量池已經(jīng)遷移到堆區(qū)了
深入理解JVM(1) : Java內(nèi)存區(qū)域劃分Java與C++之間有一堵由內(nèi)存動(dòng)態(tài)分配和垃圾收集技術(shù)所圍成的“高墻”,墻外面的人想進(jìn)去,墻里面的人卻想出來(lái)。 Java虛擬機(jī)在執(zhí)行Java程序的過(guò)程中會(huì)把它管理的內(nèi)存劃分為...
Optional 網(wǎng)上隨便搜了幾篇文章,抄來(lái)抄去。
Java8 Optional 的正確使用方式1.當(dāng)我們還在以如下幾種方式使用 Optional 時(shí), 就得開(kāi)始檢視自己了 調(diào)用 isPresent() 方法時(shí) 調(diào)用 get() 方法時(shí) Optional 類(lèi)型作為類(lèi)/實(shí)...
```
public String() {
this.value = "".value;
}
```
你難道沒(méi)發(fā)現(xiàn)這個(gè)構(gòu)造方法很奇怪嗎?
為什么沒(méi)有報(bào)編譯錯(cuò)誤
Java 源碼分析 — String 的設(shè)計(jì)Tip:筆者馬上畢業(yè)了,準(zhǔn)備開(kāi)始 Java 的進(jìn)階學(xué)習(xí)計(jì)劃。于是打算先從 String 類(lèi)的源碼分析入手,作為后面學(xué)習(xí)的案例。這篇文章寄托著今后進(jìn)階系列產(chǎn)出的愿望,希望能堅(jiān)持...
剛剛試了一下,在 master 分支下無(wú)法執(zhí)行 hexo 命令, 難道是我理解錯(cuò)了?
Hexo博客備份使用Hexo在github搭建的博客,博客作為一個(gè)單獨(dú)的GitHub倉(cāng)庫(kù)存在,但是這個(gè)倉(cāng)庫(kù)只有生成的靜態(tài)網(wǎng)頁(yè)文件,并沒(méi)有Hexo的源文件,如果要換電腦或者重裝系統(tǒng)后,就比較麻...
創(chuàng)建兩個(gè)分支,master 和 hexo。
修改完文章后,在 hexo 分支提交源文件; 然后切換到 master 分支上執(zhí)行 hexo g -d ,它會(huì)自動(dòng)更新 github 上的靜態(tài)文件。
Hexo博客備份使用Hexo在github搭建的博客,博客作為一個(gè)單獨(dú)的GitHub倉(cāng)庫(kù)存在,但是這個(gè)倉(cāng)庫(kù)只有生成的靜態(tài)網(wǎng)頁(yè)文件,并沒(méi)有Hexo的源文件,如果要換電腦或者重裝系統(tǒng)后,就比較麻...