亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python死鎖指的是什么

發布時間:2021-05-06 14:24:51 來源:億速云 閱讀:130 作者:小新 欄目:編程語言

小編給大家分享一下Python死鎖指的是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

python主要應用領域有哪些

1、云計算,典型應用OpenStack。2、WEB前端開發,眾多大型網站均為Python開發。3.人工智能應用,基于大數據分析和深度學習而發展出來的人工智能本質上已經無法離開python。4、系統運維工程項目,自動化運維的標配就是python+Django/flask。5、金融理財分析,量化交易,金融分析。6、大數據分析。

1、說明

在線共享多個資源時,如果兩個線程分別占用一部分資源,同時等待對方的資源,就會導致死鎖。

雖然死鎖很少發生,但是一旦發生,應用程序就會停止響應。

2、解決方法

程序設計應盡可能避免死鎖(銀行家算法)

增加超時時間等。

3、實例

"""
Python 死鎖演示
"""
import time
import threading
 
 
mutexA = threading.Lock()
mutexB = threading.Lock()
 
 
class MyThread1(threading.Thread):
 
    def run(self):
 
        # 對mutexA上鎖
        mutexA.acquire()
 
        # mutexA上鎖后,延時1秒,等待另外那個線程 把mutexB上鎖
        print(self.name+'----do1---up----')
        time.sleep(1)
 
        # 此時會堵塞,因為這個mutexB已經被另外的線程搶先上鎖了
        mutexB.acquire()
        print(self.name+'----do1---down----')
        mutexB.release()
 
        # 對mutexA解鎖
        mutexA.release()
 
 
class MyThread2(threading.Thread):
 
    def run(self):
        # 對mutexB上鎖
        mutexB.acquire()
 
        # mutexB上鎖后,延時1秒,等待另外那個線程 把mutexA上鎖
        print(self.name+'----do2---up----')
        time.sleep(1)
 
        # 此時會堵塞,因為這個mutexA已經被另外的線程搶先上鎖了
        mutexA.acquire()
        print(self.name+'----do2---down----')
        mutexA.release()
 
        # 對mutexB解鎖
        mutexB.release()
 
 
def main():
    t1 = MyThread1()
    t2 = MyThread2()
 
    t1.start()
    t2.start()
 
 
if __name__ == '__main__':
main()

以上是“Python死鎖指的是什么”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汉沽区| 灌南县| 偏关县| 濉溪县| 枣庄市| 鄂尔多斯市| 广宗县| 南充市| 永定县| 仁布县| 南通市| 印江| 安仁县| 维西| 河曲县| 宜兴市| 荔浦县| 富源县| 延寿县| 勃利县| 商河县| 枝江市| 沾益县| 察雅县| 吉首市| 衡阳市| 鹤峰县| 微山县| 平顶山市| 铜陵市| 绥化市| 高清| 铜川市| 定南县| 句容市| 元阳县| 开原市| 蓬溪县| 环江| 乐清市| 大新县|