初步认识Volatile-从硬件层面了解可见性的本质
生活随笔
收集整理的這篇文章主要介紹了
初步认识Volatile-从硬件层面了解可见性的本质
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一臺計算機中最核心的組件是CPU、內存、以及I/O設備。在整個計算機的發展歷程中,除了CPU、內存以及I/O設備不斷迭代升級來提升計算機處理性能之外,還有一個非常核心的矛盾點,就是這三者在處理速度的差異。CPU的計算速度是非??斓?#xff0c;內存次之、最后是IO設備比如磁盤。而在絕大部分的程序中,一定會存在內存訪問,有些可能還會存在I/O設備的訪問
為了提升計算性能,CPU從單核升級到了多核甚至用到了超線程技術最大化提高CPU的處理性能,但是僅僅提升CPU性能還不夠,如果后面兩者的處理性能沒有跟上,意味著整體的計算效率取決于最慢的設備。為了平衡三者的速度差異,最大化的利用CPU提升性能,從硬件、操作系
統、編譯器等方面都做出了很多的優化
1. CPU增加了高速緩存?
2. 操作系統增加了進程、線程。通過CPU的時間片切換最大化的提升CPU的使用率?
3. 編譯器的指令優化,更合理的去利用好CPU的高速緩存?
然后每一種優化,都會帶來相應的問題,而這些問題也是導致線程安全性問題的根源。為了了解前面提到的可見性問題的本質,我們有必要去了解這些優化的過程
?
總結
以上是生活随笔為你收集整理的初步认识Volatile-从硬件层面了解可见性的本质的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: volatile 关键字是如何保证可见性
- 下一篇: 初步认识Volatile-CPU高速缓存