JUC學習筆記(9) Semaphore

2021-08-21 23:49:42 字數 334 閱讀 1349

在訊號量上我們定義兩種操作:acquire(獲取) 當乙個執行緒呼叫acquire操作時,它要麼通過成功獲取訊號量(訊號量減1),

要麼一直等下去,直到有執行緒釋放訊號量,或超時。release(釋放)實際上會將訊號量的值加1,然後喚醒等待的執行緒。訊號量主要用於兩個目的,乙個是用於多個共享資源的互斥使用,另乙個用於併發執行緒數的控制。

public class semaphoredemo

catch (interruptedexception e) finally

},string.valueof(i)).start();

} }}

JUC學習筆記 阻塞佇列

阻塞佇列是乙個佇列。當佇列是空的,從佇列中獲取元素的操作將會被阻塞 當佇列是滿的。從佇列中新增元素的操作將會阻塞。在多執行緒領域 所謂阻塞,在某些情況下會掛起執行緒 即阻塞 一旦條件滿足,被掛起的執行緒又會自動被喚起。好處是我們不需要關心什麼時候需要阻塞執行緒,什麼時候需要喚醒執行緒,因為這一切bl...

學習筆記9

函式 函式以def開頭,後面接函式名和括號,然後接冒號 函式的最後接return結束函式,並返回乙個值,可以沒有,就相當於返回none 函式呼叫時直接用函式名加括號 括號內為需要傳入的引數。傳入函式的引數是實參 在函式內使用的大多都為形參 形參只能在函式內使用,函式結束後就自動釋放記憶體了。函式中的...

學習筆記9

今天來進行系統的學習一下css 層疊樣式表 首先說一下層疊次序,四個優先權 1.瀏覽器預設設定 2.外部樣式表 3內部樣式表 位於 內部樣式表 內聯樣式 this is a paragraph 多重樣式 例 h1居中對齊 h1 h1 css的使用 背景 background color backgr...