Lock中的一些方法及其作用

2021-08-21 05:12:05 字數 779 閱讀 1969

1:getholdcount() 查詢當前執行緒保持鎖定的個數,也就是呼叫lock()方法的次數。

2:getqueuelength() 返回正等待獲取鎖定的執行緒估計數。比如有5個執行緒,1個執行緒首先執行await()方法,那麼在呼叫方法後返回值是4,說明有4個執行緒同時在等待lock的釋放。

3:getwaitqueuelength(condition con) 返回等待與此鎖定相關的給定條件condition的執行緒估計數。比如有5個執行緒,每個執行緒都執行了同乙個condition物件的await()方法,則呼叫此方法的返回值是5。

4:hasqueuedthread(thread thread)  查詢指定

的執行緒是否在等待獲取此鎖定。

5:hasqueuedthreads()  查詢是否有執行緒正在等待獲取此鎖定。

6:haswaiters(condition con) 查詢是否有執行緒正在等待與當前鎖定有關的condition條件。

7:isfair()  判斷是否是公平鎖。

8:isheldbycurrentthread() 查詢當前執行緒是否保持此鎖定。

9:islocked() 查詢此鎖定是否由任意執行緒保持。

10:lockinterruptibly() 如果當前執行緒未被中斷,則獲取鎖定。如果已經中斷則出現異常。

11:trylock()  僅在呼叫時鎖定未被另乙個執行緒保持的情況下,才獲取該鎖定。

12:trylock(long timout,timeunit unit)  如果鎖定在給定等待時間內沒有被另乙個執行緒保持,且當前執行緒未被中斷,則獲取該鎖定。

mysql 一些字元設定,及其作用

1 伺服器 資料 端的字符集和collation,可以分成四級逐層指定 server,database,table,column。當mysql訪問位於某一列 column 的資料時,如果column的字符集和collation沒有指定,就會向上追溯table 的 如果table也沒有指定字符集和co...

Spring一些常用註解及其作用

controller 處理http請求的控制器 例子 controller public class hellocontroller spring4之後新加入的註解,原來返回json需要 responsebody和 controller配合。即 restcontroller是 responsebod...

Oracle中的一些方法

解除被鎖的使用者 alter user scott 使用者名稱 account unlock 顯示當前使用者 show user 修改使用者的密碼 alter user scott identified by tiger 建立使用者 create user zhangsan identified b...