AtomicBoolean介紹與使用

2021-07-23 23:45:09 字數 590 閱讀 8177

介紹:在這個boolean值的變化的時候不允許在之間插入,保持操作的原子性

方法: compareandset(boolean expect, boolean update)

這個方法主要兩個作用        

1. 比較atomicboolean和expect的值,如果一致,執行方法內的語句。其實就是乙個if語句      

2. 把atomicboolean的值設成update       

比較最要的是這兩件事是一氣呵成的,這連個動作之間不會被打斷,任何內部或者外部的語句都不可能在兩個動作之間執行。為多執行緒的控制提供了解決的方案。

demo:

private static atomicboolean initialized = new atomicboolean(false);

public void init()

}

普通方法:

public static volatile initialized = false;

public void init()

}

python pyqt介紹 PyQt 介紹

pyqt 介紹 pyqt api是一組包含大量類和函式的模組。雖然qtcore模組包含用於處理檔案和目錄等的非gui功能,但qtgui模組包含所有圖形控制項。此外,還有用於處理xml qtxml svg qtsvg 和sql qtsql 等的模組。支援環境 pyqt與所有流行的作業系統相容,包括wi...

struts介紹(三) webwork介紹

1,與strust1的比較 1 相對比struts1,webwork有更多的表示層技術,比如 velocity freemarker和xslt 2 可以脫離web應用使用,aciton與servlet api 分離,execute方法甚至與webwork api分離。有自己的控制反轉容器。3 自定義...

xgboost簡單介紹 xgboost介紹

xgboost是華盛頓大學博士陳天奇創造的乙個梯度提公升 gradient boosting 的開源框架。至今可以算是各種資料比賽中的大殺器,被大家廣泛地運用。接下來,就簡單介紹一下xgboost和普通的gbdt相比,有什麼不同。何為gradient boosting,gbdt請看我上篇文章 1.梯...