保證線程安全以是否需要同步手段分類,分為同步方案和無需同步方案 。如下:
1、互斥同步 。
互斥同步是最常見的一種并發(fā)正確性保障手段 。同步是指在多線程并發(fā)訪問共享數(shù)據(jù)時,保證共享數(shù)據(jù)在同一時刻只被一個線程使用(同一時刻,只有一個線程在操作共享數(shù)據(jù)) 。而互斥是實現(xiàn)同步的一種手段,臨界區(qū)、互斥量和信號量都是主要的互斥實現(xiàn)方式 。因此,在這4個字里面,互斥是因,同步是果;互斥是方法,同步是目的 。【多線程如何保證線程安全 如何保證線程安全】
2、非阻塞同步 。
隨著硬件指令集的發(fā)展,出現(xiàn)了基于沖突檢測的樂觀并發(fā)策略,通俗地說,就是先進行操作,如果沒有其他線程爭用共享數(shù)據(jù),那操作就成功了;如果共享數(shù)據(jù)有爭用,產(chǎn)生了沖突,那就再采用其他的補償措施 。(最常見的補償錯誤就是不斷地重試,直到成功為止),這種樂觀的并發(fā)策略的許多實現(xiàn)都不需要把線程掛起,因此這種同步操作稱為非阻塞同步 。
3、無需同步方案 。
要保證線程安全,并不是一定就要進行同步,兩者沒有因果關(guān)系 。同步只是保證共享數(shù)據(jù)爭用時的正確性的手段,如果一個方法本來就不涉及共享數(shù)據(jù),那它自然就無需任何同步操作去保證正確性,因此會有一些代碼天生就是線程安全的 。
相關(guān)經(jīng)驗推薦
- 如何取消花唄的周 花唄周卡怎么關(guān)閉
- 新版qq影音如何合并音樂 qq影音怎么把音樂合在一起
- 2022鄭州高考市各區(qū)縣 2021年鄭州市有多少高考考生
- 2022福建高考要提前多久回福建 2020福建高考幾天
- 臺州一億消費劵如何申領(lǐng)使用 臺州一億消費劵如何申領(lǐng)
- 鵝肉怎么燉最好吃 如何燉鵝最好吃
- 率的組詞和多音字 率的組詞
- 臺州普通話等級考試報名費多少錢
- 臺州低保金怎么查詢發(fā)放情況 臺州市低保標準是多少
- 2022臺州低保多少錢一個月 2020年低保新政策一個月多少錢溫州市
