Java理解之線性安全與線性不安全

java理解之線性安全

在java中存在這樣一個概念:線性安全。說到線性安全必然也會涉及到集合對象,對於集合對象中,存在兩種類型,即爲線性安全及線性不安全。

對於理解線性安全,就必須提前瞭解一個概念:

線性同步:當一個程序對語句(或線性安全的方法)進行訪問過程中,其他的將不能對其進行其他相關的操作,必須要等到本次訪問結束之後才能對這個語句(或線性安全的方法)進行訪問。

那下面我就來引入線性安全這一個概念:

線性安全
如果現在代碼中有多個線程同時運行,而這些線程可能在同一個時刻運行這段代碼,那麼如果運行結果個單線程運行的結果是一致的,而且其他的變量值跟預期是一模一樣的。那麼我們就稱之爲線性安全。

注意:線性安全問題都是由全局變量及靜態變量引起的。
其次,在實際的運行過程中,若每個線程中對全局變量,靜態變量只有讀操作,並無寫操作,一般而言,這個全局變量是線程安全的;
若有多個線程同時執行寫操作,一般需要考慮到線程同步的問題,否則就可能影響到線程的安全問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章