<option id="mwy0y"><strong id="mwy0y"></strong></option>
  • <ul id="mwy0y"><sup id="mwy0y"></sup></ul>
  • <ul id="mwy0y"></ul>
  • <del id="mwy0y"><dfn id="mwy0y"></dfn></del><ul id="mwy0y"><sup id="mwy0y"></sup></ul>
  • <abbr id="mwy0y"></abbr>

    千鋒教育-做有情懷、有良心、有品質的職業教育機構

    400-811-9990
    手機站
    千鋒教育

    千鋒學習站 | 隨時隨地免費學

    千鋒教育

    掃一掃進入千鋒手機站

    領取全套視頻
    千鋒教育

    關注千鋒學習站小程序
    隨時隨地免費學習課程

    上海
    • 北京
    • 鄭州
    • 武漢
    • 成都
    • 西安
    • 沈陽
    • 廣州
    • 南京
    • 深圳
    • 大連
    • 青島
    • 杭州
    • 重慶
    當前位置:長沙千鋒IT培訓  >  技術干貨  >  python死鎖的產生原因

    python死鎖的產生原因

    來源:千鋒教育
    發布人:xqq
    時間: 2023-11-07 21:15:45

    python死鎖的產生原因

    1、程序永遠無法運行結束,根本原因在于:

    一個線程持有鎖1同時在請求鎖2,另一個線程持有鎖2同時在請求鎖1,二者不得到對方的鎖都不會放開自己的鎖,程序就這樣僵持下去了。

    2、實例

    兩個線程會同時開啟,程序打印出

    print1firstThread-1

    print1secondThread-1

    print2firstThread-1

    print1firstThread-2

    (1)第一個線程先執行print1,獲得了鎖1,等待1秒。這時第二個線程已經開啟,企圖獲得鎖1,但是獲取不到于是等待

    (2)第一個線程等待時間結束,獲得鎖2,打印結束釋放兩把鎖。之后馬上開始執行print2,并獲得鎖2,等待1秒

    (3)這時第二個線程可以獲得鎖1了,開始執行print1,也等待1秒

    (4)等待時間結束,第一個線程持有鎖2企圖獲得鎖1,第一個線程持有鎖1企圖獲得鎖2,就陷入了僵局

    以上就是Python死鎖的產生原因,希望對大家有所幫助。更多Python學習推薦:請關注IT培訓機構:千鋒教育。

    聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

    猜你喜歡LIKE

    python實現WSGI的框架

    2023-11-13

    python打開文本文件有哪些方法?

    2023-11-13

    python使用loguru操作日志

    2023-11-13

    最新文章NEW

    python-=是什么意思

    2023-11-13

    pythonre是什么?

    2023-11-13

    python列表追加元素出錯的解決

    2023-11-13

    相關推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網友熱搜 更多>>