日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

線程死鎖檢測的方法、裝置、電子設備和存儲介質與流程

文檔序號:39713558發(fā)布日期:2024-10-22 12:59閱讀:3來源:國知局
線程死鎖檢測的方法、裝置、電子設備和存儲介質與流程

本技術屬于操作系統(tǒng),尤其涉及一種線程死鎖檢測的方法、裝置、電子設備和存儲介質。


背景技術:

1、操作系統(tǒng)在運行時,容易發(fā)生線程死鎖,導致系統(tǒng)運行異常。

2、在檢測線程死鎖時,一些現(xiàn)有技術通過增加專用設備來檢測是否發(fā)生線程死鎖,檢測成本過高?;诖?,在另外一些現(xiàn)有技術中,通過對線程進行跟蹤來檢測是否發(fā)生線程死鎖,雖然不需要增加專用檢測設備,但是需要收集的信息較多,增加了額外負載,導致檢測速度慢,系統(tǒng)性能變差。

3、因此,現(xiàn)有技術存在的問題是:在對線程死鎖進行檢測時,檢測速度慢,系統(tǒng)性能會變差。


技術實現(xiàn)思路

1、本技術實施例提供了一種線程死鎖檢測的方法、裝置、電子設備和存儲介質,解決了在對線程死鎖進行檢測時,檢測速度慢,系統(tǒng)性能會變差的問題。

2、第一方面,本技術實施例提供了一種線程死鎖檢測的方法,包括:

3、獲取待檢測的資源鎖的目標信息,目標信息包括資源鎖的持有線程的信息、資源鎖的等待線程的信息、資源鎖數(shù)量;

4、在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息;

5、在目標信息滿足預設條件的情況下,確定存在線程死鎖。

6、在一些可能的實現(xiàn)方式中,目標信息包括線程狀態(tài)的信息;在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息,包括:

7、在等待線程包括所有持有線程,且資源鎖數(shù)量為2的情況下,判斷持有資源鎖的持有線程是否為相同線程;

8、在不為相同線程的情況下,獲取持有線程和等待線程的線程狀態(tài)的信息;

9、在目標信息滿足預設條件的情況下,確定存在線程死鎖,包括:

10、在持有線程和等待線程的線程狀態(tài)均包括等待狀態(tài)的情況下,確定存在線程死鎖。

11、在一些可能的實現(xiàn)方式中,目標信息包括持有線程與等待線程之間的關聯(lián)關系;在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息,包括:

12、在等待線程包括所有持有線程,且資源鎖數(shù)量為n的情況下,確定持有線程與等待線程之間的關聯(lián)關系,其中,n為大于2的正整數(shù);

13、在目標信息滿足預設條件的情況下,確定存在線程死鎖,包括:

14、在持有線程與等待線程之間的關聯(lián)關系為閉環(huán)關系的情況下,確定存在線程死鎖,其中,閉環(huán)關系為第n線程持有第n資源鎖、第n-1線程等待第n資源鎖、第n線程等待第一資源鎖的關系。

15、在一些可能的實現(xiàn)方式中,在獲取待檢測的資源鎖的目標信息之前,該方法還包括:

16、獲取初始資源鎖;

17、根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖。

18、在一些可能的實現(xiàn)方式中,根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖,包括:

19、響應于用戶輸入的第一指令,在目標頁面顯示q個初始資源鎖的信息;

20、接收用戶輸入的第二指令,第二指令中包括目標資源鎖的信息,目標資源鎖為用戶在目標頁面中選擇的初始資源鎖;

21、將第二指令中的目標資源鎖,作為待檢測的資源鎖。

22、在一些可能的實現(xiàn)方式中,根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖,包括:

23、按照預設規(guī)則,對初始資源鎖進行分類,得到多個資源鎖組;

24、獲取資源鎖組中的資源鎖的上鎖時間長度;

25、確定上鎖時間長度超過預設閾值的資源鎖所屬的資源鎖組,為目標資源鎖組;

26、將目標資源鎖組中的資源鎖,作為待檢測的資源鎖。

27、在一些可能的實現(xiàn)方式中,按照預設規(guī)則,對所有資源鎖進行分類,得到多個資源鎖組,包括:

28、基于預設的時間間隔,按照預設規(guī)則對所有資源鎖進行分類,得到多個資源鎖組。

29、在一些可能的實現(xiàn)方式中,還包括:

30、存在線程死鎖的情況下,按照預設的解鎖規(guī)則進行解鎖。

31、在一些可能的實現(xiàn)方式中,預設的解鎖規(guī)則包括:修改目標線程的等待獲取狀態(tài)為無等待獲取狀態(tài),和/或修改目標線程的優(yōu)先級為最高優(yōu)先級。

32、在一些可能的實現(xiàn)方式中,還包括:

33、查詢解鎖后的資源鎖狀態(tài)和線程狀態(tài);

34、根據(jù)解鎖后的資源鎖狀態(tài)和線程狀態(tài),判斷解鎖結果。

35、第二方面,本技術實施例還提供了一種線程死鎖檢測的裝置,包括:

36、獲取模塊,用于獲取待檢測的資源鎖的目標信息,目標信息包括資源鎖的持有線程的信息、資源鎖的等待線程的信息、資源鎖數(shù)量;

37、確定模塊,用于在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息;

38、確定模塊,還用于在目標信息滿足預設條件的情況下,確定存在線程死鎖。

39、在一些可能的實現(xiàn)中,目標信息包括線程狀態(tài)的信息;確定模塊用于在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息,包括:

40、判斷單元,用于在等待線程包括所有持有線程,且資源鎖數(shù)量為2的情況下,判斷持有資源鎖的持有線程是否為相同線程;

41、獲取單元,用于在不為相同線程的情況下,獲取持有線程和等待線程的線程狀態(tài)的信息;

42、確定模塊還用于在目標信息滿足預設條件的情況下,確定存在線程死鎖,包括:

43、確定單元,用于在持有線程和等待線程的線程狀態(tài)均包括等待狀態(tài)的情況下,確定存在線程死鎖。

44、在一些可能的實現(xiàn)中,目標信息包括持有線程與等待線程之間的關聯(lián)關系;確定模塊用于在等待線程包括所有持有線程的情況下,根據(jù)資源鎖數(shù)量,確定持有線程和等待線程的目標信息,包括:

45、確定單元,用于在等待線程包括所有持有線程,且資源鎖數(shù)量為n的情況下,確定持有線程與等待線程之間的關聯(lián)關系,其中,n為大于2的正整數(shù);

46、確定模塊還用于在目標信息滿足預設條件的情況下,確定存在線程死鎖,包括:

47、確定單元,還用于在持有線程與等待線程之間的關聯(lián)關系為閉環(huán)關系的情況下,確定存在線程死鎖,其中,閉環(huán)關系為第n線程持有第n資源鎖、第n-1線程等待第n資源鎖、第n線程等待第一資源鎖的關系。

48、在一些可能的實現(xiàn)中,在獲取待檢測的資源鎖的目標信息之前,該裝置還包括:

49、獲取模塊,還用于獲取初始資源鎖;

50、確定模塊,還用于根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖。

51、在一些可能的實現(xiàn)中,確定模塊還用于根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖,包括:

52、顯示單元,用于響應于用戶輸入的第一指令,在目標頁面顯示q個初始資源鎖的信息;

53、接收單元,用于接收用戶輸入的第二指令,第二指令中包括目標資源鎖的信息,目標資源鎖為用戶在目標頁面中選擇的初始資源鎖;

54、確定單元,用于將第二指令中的目標資源鎖,作為待檢測的資源鎖。

55、在一些可能的實現(xiàn)中,確定模塊還用于根據(jù)初始資源鎖滿足的目標條件,從初始資源鎖中,確定待檢測的資源鎖,包括:

56、分類單元,用于按照預設規(guī)則,對初始資源鎖進行分類,得到多個資源鎖組;

57、獲取單元,用于獲取資源鎖組中的資源鎖的上鎖時間長度;

58、確定單元,用于確定上鎖時間長度超過預設閾值的資源鎖所屬的資源鎖組,為目標資源鎖組;

59、確定單元,還用于將目標資源鎖組中的資源鎖,作為待檢測的資源鎖。

60、在一些可能的實現(xiàn)中,分類單元用于按照預設規(guī)則,對所有資源鎖進行分類,得到多個資源鎖組,包括:

61、分類單元,用于基于預設的時間間隔,按照預設規(guī)則對所有資源鎖進行分類,得到多個資源鎖組。

62、在一些可能的實現(xiàn)中,還包括:

63、解鎖模塊,用于存在線程死鎖的情況下,按照預設的解鎖規(guī)則進行解鎖。

64、在一些可能的實現(xiàn)中,預設的解鎖規(guī)則包括:修改目標線程的等待獲取狀態(tài)為無等待獲取狀態(tài),和/或修改目標線程的優(yōu)先級為最高優(yōu)先級。

65、在一些可能的實現(xiàn)中,還包括查詢模塊、判斷模塊:

66、查詢模塊,用于查詢解鎖后的資源鎖狀態(tài)和線程狀態(tài);

67、判斷模塊,用于根據(jù)解鎖后的資源鎖狀態(tài)和線程狀態(tài),判斷解鎖結果。

68、第三方面,本技術實施例還提供了一種電子設備,該電子設備包括處理器以及存儲有計算機程序指令的存儲器;處理器執(zhí)行計算機程序指令時實現(xiàn)第一方面,或第一方面中的任一可能實現(xiàn)方式中的線程死鎖檢測的方法。

69、第四方面,本技術實施例還提供了一種計算機存儲介質,計算機可讀存儲介質上存儲有計算機程序指令,計算機程序指令被處理器執(zhí)行時實現(xiàn)第一方面,或第一方面中的任一可能實現(xiàn)方式中的線程死鎖檢測的方法。

70、第五方面,本技術實施例提供了一種計算機程序產品,計算機程序產品中的指令由電子設備的處理器執(zhí)行時,使得電子設備能夠執(zhí)行第一方面,或第一方面中的任一可能實現(xiàn)方式中的線程死鎖檢測的方法。

71、本技術實施例的線程死鎖檢測的方法、裝置、電子設備和存儲介質,通過獲取待檢測的資源鎖的目標信息,該目標信息可以包括持有資源鎖的持有線程的信息、等待資源鎖的等待線程的信息、以及資源鎖數(shù)量,然后在多個等待線程包括所有持有線程的情況下,可以根據(jù)資源鎖數(shù)量,判斷是否存在線程死鎖。本技術實施例將檢測對象由傳統(tǒng)的檢測線程,修改為檢測資源鎖,例如互斥鎖、條件變量、讀寫鎖等,由于資源鎖的數(shù)量少于線程數(shù)量,從而可以降低線程死鎖檢測時的所需資源,提高了檢測速度,提高了系統(tǒng)性能。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1