併發

輕鬆檢測Golang併發的資料競爭

Golang中我們使用Channel或者sync.Mutex等鎖保護資料,有沒有一種機制可以檢測程式碼中的資料競爭呢? 資料競爭是併發情況下,存在多執行緒/協程讀寫相同資料的情況,必須存在至少一方寫。另外,

併發map --- sync map分析

[TOC] 本文基於1.10原始碼分析 如之前的文章可以看到,golang中的map是不支援併發操作的,golang推薦使用者直接用讀寫鎖對map進行保護,也有第三方類庫使用分段鎖。在1.19版本中,g

高併發程式設計:volatile 詳解

主記憶體與工作記憶體 在介紹volatile之前,先簡單瞭解一下Java記憶體模型。在Java虛擬機器規範中試圖定義一種Java記憶體模型(Java Memory Model,JMM)來遮蔽各個硬體平臺和作

一次 HashSet 所引起的併發問題

上午剛到公司,準備開始一天的摸魚之旅時突然收到了一封監控中心的郵件。 心中暗道不好,因為監控系統從來不會告訴我應用完美無 bug ,其實系統挺猥瑣。 開啟郵件一看,果然告知我有一個應用的執

處理併發的方式

併發,就會出現競爭問題,下面是幾種常見的處理方式: 加鎖。所有的參與者競爭同一個鎖,持有鎖的參與者可以對資源進行操作。如果資源滿足讀和寫可以分離的條件,可以使用讀寫鎖來 提高讀的併發

伺服器的併發與實現

眾所周知,現在的伺服器可以處理多個socket連線,背後併發的實現主要有兩種途徑。 多執行緒同步阻塞 I/O多路複用 socket的建立 聊到socket,就不得不提到s

漫話:如何給女朋友解釋什麼是併發和並行

某天下班後,我在家裡進行電話面試,問到面試者這樣一個問題:"能不能簡單介紹一下你理解的併發和並行,並說明一下他們之間的關係"。但是面試者回答的並不好,所以我在面試評價中寫到:"

高併發業務線上效能、儲存二三事

最近兩天促銷開始,零點流量大幅增加,通過還是比較平穩的,到是到了白天一個節點流量有大幅增加,但是量遠沒有達到系統極限,但是系統多個業務效能有一段時間下降。 首先分析問題原因,流量本身不正常因為白天突然增加七

深入底層瞭解Java併發機制系列之CPU快取模型

Javaer都知道,我們在編譯器上面編寫的Java程式碼經過編譯後會形成位元組碼,然後由類載入器載入到JVM中,JVM在執行位元組碼時,將它們轉換成一條條的彙編指令,最終由CPU的暫存器來執行,在CPU執行這些

1746051779.7181