多線程讀寫優化(雙buff內存交換代替有鎖設計)

例子(場景) 目前有線程ThreadA和ThreadB,一個隊列Queue。ThreadA會對Queue進行入隊操作,而ThreadB會對Queue進行出隊操作。如下圖: 一般情況下,我們都會直接給Queue上鎖,這樣就能保證多線程同時對Queue進行操作時不會有問題。 直接加上鎖可以很容易就解決這個問題,但是也會帶來其他的問題:入隊操作一般幾乎不耗時,而出隊操作往往帶有其他一系列邏輯操作,所以會
相關文章
相關標籤/搜索