
2021年十月,我和父母驅車去桐廬玩了3天。為什么地點選擇桐廬?首先風景優美。桐廬為杭州下轄縣,富春江畔,山巒重疊,又有古村坐落于山川之間,可謂...
在之前的例子中,線程執行的任務,在Runnable對象中定義,和線程,在Thread對象中定義,兩者之間總是有一種密切的關聯。這樣的機制對小型應...
到目前為止,本課程一直都專注于底層次的API——從非常早開始就一直是JAVA平臺的組成部分。這些API對于解決一些基本問題是非常足夠的,但是為了...
如果一個對象的狀態在它構建之后就不能被更改,我們就認為它是不可更改的對象。對不可更改對象的最大限度的依賴被廣泛認為是一種建立簡單、可信賴代碼的好...
線程通常需要協調它們的動作。最常見的協調方法是被守護的代碼塊。這樣的代碼塊以在代碼塊執行之前,對一個總是為真的條件進行輪詢。為了能正確完成它,需...
一個并發線程能夠在一定時間內執行完成的能力被成為活性。這一節介紹了最常見的活性問題,死鎖,并介紹了另外兩種活性問題——饑餓和活鎖。 死鎖 死鎖描...
在編程中,一個原子操作是指能一次發生的動作。一次原子操作不能被中途打斷:它要么完全執行,要么根本不執行。原子操作的副作用必須在它結束之后,才能看...
同步是在被稱為內部鎖或者管鎖的內部實體上建立起來的。內部鎖在同步的兩個方面都扮演了重要的角色:加強對一個對象狀態互斥的進入,以及建立對可見性很重...
JAVA編程語言提供了兩種基本的同步做法:同步方法和同步語句。其中更為復雜的同步語句會在之后的章節講。這個章節是關于同步方法的。 想要讓一個方法...