色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

condition原理

老白2年前22瀏覽0評論

condition原理?

Condition持有多個FIFO的等待隊列,當前線程調用await方法時,那么這當前線程就會釋放鎖,進入這個等待隊列的尾部進入等待狀態。

Condition擁有這個隊列的首節點(firstWaiter)和尾節點(lastWaiter).其實一個Lock(同步器)有一個同步隊列(準備去獲得鎖)以及多個等待隊列(本來已經有鎖,但是中途用了await方法),還記得之前討論的監視器么,和這個很像,監視器只有一個同步隊列和一個等待隊列。

其實工作原理一樣的,沒有獲取鎖的線程在同步隊列等待鎖,獲得鎖后進入特殊的房間(資源),調用await之類的等待方法就把同步隊列的頭結點移到等待隊列的尾節點。當等待隊列里面的節點被喚醒后,進入同步隊列拿鎖進入同步狀態。

java喚醒線程,condition原理