談到內(nèi)存對齊,早年間玩Java的時候就能偶爾打打交道,為此Java8還提供了個語法糖@Contended來幫助我們解決高速緩存cacheline...
日常開發(fā)過程中,map結(jié)構(gòu)應(yīng)該登場率是較為頻繁的。但是Go的內(nèi)建map類型并不是協(xié)程安全的。如下面這個栗子,如果業(yè)務(wù)開發(fā)過程中不注意很容易中招。...
sync.Cond實現(xiàn)了一個條件變量,用于等待一個或一組goroutines滿足條件后喚醒的場景。每個Cond關(guān)聯(lián)一個Locker通常是一個*M...
如果能夠?qū)⑺袃?nèi)存都分配到棧上無疑性能是最佳的,但不幸的是我們不可避免需要使用堆上分配的內(nèi)存。我們可以優(yōu)化使用堆內(nèi)存時的性能損耗嗎?答案是肯定的...
Go是強類型/靜態(tài)類型語言,每個變量在編譯時就已經(jīng)確定是哪種靜態(tài)類型。反射(reflection)是程序在運行時可以訪問、檢測、修改自身狀態(tài)或行...
使用Go作為服務(wù)端開發(fā)時,每個請求過來都會分配一個goroutine來處理,請求處理過程中,可能還會創(chuàng)建額外的goroutine訪問DB或者RP...
【關(guān)注公眾號】「syd3600520」 回復(fù)002 獲取Go相關(guān)學(xué)習(xí)資料 Mutex是一個互斥的排他鎖,零值Mutex為未上鎖狀態(tài),Mutex一...
【關(guān)注公眾號】「syd3600520」 回復(fù)002 獲取Go相關(guān)學(xué)習(xí)資料 從計算機誕生到現(xiàn)在,編程語言的發(fā)展大致分為了三個階段 從打孔程序的機器...
【關(guān)注公眾號】「syd3600520」 回復(fù)002 獲取Go相關(guān)學(xué)習(xí)資料 這篇文章打算跟大家聊聊Makefiles,作為一個后端開發(fā)者,熟練掌握...