真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python互斥鎖怎么解決多線程問題

這篇文章給大家分享的是有關(guān)Python互斥鎖怎么解決多線程問題的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、寶山ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的寶山網(wǎng)站制作公司

python主要應(yīng)用領(lǐng)域有哪些

1、云計(jì)算,典型應(yīng)用OpenStack。2、WEB前端開發(fā),眾多大型網(wǎng)站均為Python開發(fā)。3.人工智能應(yīng)用,基于大數(shù)據(jù)分析和深度學(xué)習(xí)而發(fā)展出來的人工智能本質(zhì)上已經(jīng)無法離開python。4、系統(tǒng)運(yùn)維工程項(xiàng)目,自動(dòng)化運(yùn)維的標(biāo)配就是python+Django/flask。5、金融理財(cái)分析,量化交易,金融分析。6、大數(shù)據(jù)分析。

1、說明

當(dāng)多個(gè)線程幾乎同時(shí)修改共享數(shù)據(jù)時(shí),需要同步控制。

線程同步可以保證多線程安全訪問競爭資源,最簡單的同步機(jī)制是引入互斥鎖。

互斥鎖引入資源狀態(tài):鎖定/非鎖定。

2、實(shí)例

"""
Python 互斥鎖解決多線程資源競爭問題
"""
import time
import threading
 
 
# 線程共享變量
g_num = 0
 
# 創(chuàng)建一個(gè)互斥鎖
# 默認(rèn)是未上鎖的狀態(tài)
mutex = threading.Lock()
 
 
def work1(num):
    global g_num
    for i in range(num):
        mutex.acquire()  # 上鎖
        g_num += 1
        mutex.release()  # 解鎖
 
    print("---work1---g_num=%d" % g_num)
 
 
def work2(num):
    global g_num
    for i in range(num):
        mutex.acquire()  # 上鎖
        g_num += 1
        mutex.release()  # 解鎖
 
    print("---work2---g_num=%d" % g_num)
 
 
def mutex_test():
    """互斥鎖測試"""
 
    # 創(chuàng)建2個(gè)線程,讓他們各自對g_num加1000000次
    count = 1000000
    t1 = threading.Thread(target=work1, args=(count,))
    t1.start()
 
    t2 = threading.Thread(target=work2, args=(count,))
    t2.start()
 
    # 等待計(jì)算完成
    # len(threading.enumerate()) = 當(dāng)前程序線程的數(shù)量
    # 為1說明只剩下主線程
    while len(threading.enumerate()) != 1:
        time.sleep(1)
 
    print("2個(gè)線程對同一個(gè)全局變量操作之后的最終結(jié)果是:%s" % g_num)
 
 
def main():
    mutex_test()
 
 
if __name__ == '__main__':
    main()

感謝各位的閱讀!關(guān)于“Python互斥鎖怎么解決多線程問題”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


網(wǎng)站欄目:Python互斥鎖怎么解決多線程問題
轉(zhuǎn)載來于:http://weahome.cn/article/ggdiec.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部