![Avatar notebook default](https://cdn2.jianshu.io/assets/default_avatar/avatar-notebook-default-640f7dde88592bdf6417d8ce1902636e.png)
源碼目錄 time/time.go (1.1.4.1) 數(shù)據(jù)結(jié)構(gòu) 從數(shù)據(jù)結(jié)構(gòu)上看横漏,timer和ticker其實(shí)是一樣的。每個(gè)P都維護(hù)一個(gè)time...
源碼 版本1.14.1 相關(guān)目錄runtime/asm_amd64.sruntime/proc.goruntime/runtime2.go 關(guān)鍵...
源碼目錄 ///sync.pool.go (1.14.1) 前言 sync.pool對象池是個(gè)好東西撩满,避免對象的反復(fù)創(chuàng)建和回收。對于一些需要頻繁...
源碼目錄 //runtime/runtime2.go。 (go 1.12.7) interface分為兩類:iface和eface荣刑。eface不...
讀寫鎖(RWMutex)是在互斥鎖(Mutex)的基礎(chǔ)上構(gòu)建的。Mutex筆記見另一篇 那么為什么需要讀寫鎖呢伦乔?試想一下厉亏,在讀多寫少的場景下,m...
老實(shí)說呢烈和,Mutex源碼我看了好多遍爱只,依舊沒完全看懂。各種狀態(tài)邏輯很難理解招刹。(golang 1.12.7) 先來看看Mutex的核心注釋 數(shù)據(jù)結(jié)...
數(shù)據(jù)結(jié)構(gòu) Add Done Wait 小結(jié) 不可以復(fù)制恬试,只能通過指針傳遞 最多可存放2^32個(gè)未執(zhí)行完的goroutine wait和add不要...
前言 本文基于golang 1.12.7 linux-amd64 golang采用基于tcmalloc的內(nèi)存管理。按分配內(nèi)存大小采用不同策略: ...
本文不對context的具體用法講解疯暑,僅對源碼走讀训柴。 context一共分為6類:Background、TODO妇拯、WithCancel幻馁、With...