導航:首頁 > 編程語言 > java並發問題

java並發問題

發布時間:2022-08-13 18:42:18

❶ 《java並發編程實戰》上面的一個問題

總共就三種情況!!!!1.無限循環,number的值為0:在主線程即main方法中對ready的設置(即ready = true)還沒來得及寫回主存(靜態變數保存在方法區),ReaderThread 線程就已經讀取了ready的值(並保留了副本),然後載入到Java棧中,此時ready 一直為false所以出現死循環。number的值也可以類似推理,在主線程即main方法中對number的設置(即number= 42)還沒來得及寫回主存(靜態變數保存在方法區),ReaderThread 線程就已經讀取了number的值(並保留了副本),然後載入到Java棧中,此時number一直為0(只是沒有列印出來而已);

2.無限循環,number的值為42:在主線程即main方法中對ready的設置(即ready = true)還沒來得及寫回主存(靜態變數保存在方法區),ReaderThread 線程就已經讀取了ready的值(並保留了副本),然後載入到Java棧中,此時ready 一直為false所以出現死循環。在主線程即main方法中對number的設置(即number= 42)後(即number的值已經寫回了主存),ReaderThread 線程才開始執行此時讀取的number為42(只是沒有列印出來而已);

3.輸出0:在主線程即main方法中對ready的設置(即ready = true)後(即ready的值已經寫回了主存),還沒來得及寫回主存(靜態變數保存在方法區),ReaderThread 線程就已經讀取了number的值(並保留了副本),然後載入到Java棧中,此時number為0;

至於為什麼會出現ready = true寫回主存後,number = 42還沒寫回主存。這應該是由於Java虛擬機的一種優化技術叫指令重排序,number = 42不一定會在ready = true前面執行,得看Java虛擬機是怎麼優化的。

❷ java多線程並發問題怎麼解決

java多線程並發問題產生的主要原因是多個線程訪問一個實例,導致其中一個線程修改或刪除這個實例時,其他線程產生並發問題。

要解決這種並發問題有兩種方法:
(1)加上線程鎖synchronization
(2)還有個不是辦法的辦法:不用成員變數,用局部變數

❸ java 項目開發中中如何解決高並發問題

對於我們開發的網站,如果網站的訪問量非常大的話,那麼我們就需要考慮相關的並發訪問問題了。而並發問題是絕大部分的程序員頭疼的問題,

但話又說回來了,既然逃避不掉,那我們就坦然面對吧~今天就讓我們一起來研究一下常見的並發和同步吧。

為了更好的理解並發和同步,我們需要先明白兩個重要的概念:同步和非同步

1、同步和非同步的區別和聯系

所謂同步,可以理解為在執行完一個函數或方法之後,一直等待系統返回值或消息,這時程序是出於阻塞的,只有接收到

返回的值或消息後才往下執行其它的命令

非同步,執行完函數或方法後,不必阻塞性地等待返回值或消息,只需要向系統委託一個非同步過程,那麼當系統接收到返回

值或消息時,系統會自動觸發委託的非同步過程,從而完成一個完整的流程。

同步在一定程度上可以看做是單線程,這個線程請求一個方法後就待這個方法給他回復,否則他不往下執行(死心眼)。

非同步在一定程度上可以看做是多線程的(廢話,一個線程怎麼叫非同步),請求一個方法後,就不管了,繼續執行其他的方法。

同步就是一件事,一件事情一件事的做。
非同步就是,做一件事情,不引響做其他事情。

例如:吃飯和說話,只能一件事一件事的來,因為只有一張嘴。
但吃飯和聽音樂是非同步的,因為,聽音樂並不引響我們吃飯。

對於Java程序員而言,我們會經常聽到同步關鍵字synchronized,假如這個同步的監視對象是類的話,那麼

閱讀全文

與java並發問題相關的資料

熱點內容
什麼是適合自己的app 瀏覽:451
雲伺服器怎麼補漏洞 瀏覽:176
如何看自己的安卓是什麼等級 瀏覽:633
被丁磊挖走的程序員 瀏覽:19
gsk980ta編程 瀏覽:507
單片機離線 瀏覽:84
解壓助眠敲擊外國長指甲 瀏覽:421
3次元編程 瀏覽:803
夫妻傳送英文命令 瀏覽:316
程序員題代做 瀏覽:950
戴爾伺服器怎麼擴大內存 瀏覽:641
解壓包密碼消失 瀏覽:135
昆侖通態觸摸屏用戶窗加密 瀏覽:564
農信app怎麼看日額 瀏覽:865
iphone備忘錄包含視頻無法加密 瀏覽:283
抖音快手紅包源碼 瀏覽:137
程序員資源分析 瀏覽:586
linux交換分區大小 瀏覽:922
mt怎麼編譯 瀏覽:337
qq郵箱打開pdf 瀏覽:461