91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

定兴县| 祁阳县| 日喀则市| 钟山县| 尉氏县| 黑龙江省| 区。| 正镶白旗| 始兴县| 灵寿县| 徐闻县| 楚雄市| 邳州市| 宜昌市| 临潭县| 河池市| 湟中县| 崇文区| 五原县| 宣城市| 阜阳市| 滕州市| 新昌县| 青浦区| 泗水县| 商水县| 武宣县| 莱芜市| 西平县| 康保县| 龙陵县| 尼玛县| 阳东县| 江阴市| 公安县| 罗城| 周宁县| 临汾市| 县级市| 崇左市| 密云县|