本篇文章為大家展示了怎么在python中利用互斥鎖分配資源,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
柯城網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,柯城網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為柯城千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的柯城做網(wǎng)站的公司定做!
python的五大特點:1.簡單易學(xué),開發(fā)程序時,專注的是解決問題,而不是搞明白語言本身。2.面向?qū)ο?,與其他主要的語言如C++和Java相比, Python以一種非常強大又簡單的方式實現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無需修改就可以在各種平臺上運行。4.解釋性,Python語言寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。
1、threading模塊中定義了Lock類,可以實現(xiàn)鎖
創(chuàng)建鎖對象: mutex = threading.Lock()
上鎖: mutex.acquire()
釋放鎖: mutex.release()
2、注意
如果這個鎖之前是沒有上鎖的,那么acquire就不會阻塞
如果調(diào)用acquire之前這個鎖是被其它線程上了鎖的,那么acquire就會阻塞,直到這個鎖被釋放
3、實例
import threading import time num = 0 def count_test1(): global num for i in range(100000): mutex.acquire() num += 1 mutex.release() print("count_test1-->num:%s"%num) def count_test2(): global num for i in range(100000): mutex.acquire() num += 1 mutex.release() print("count_test2-->num:%s"%num) mutex = threading.Lock() t1 = threading.Thread(target=count_test1) t2 = threading.Thread(target=count_test2) t1.start() t2.start() t1.join() t2.join() print("最終的num:%s"%num)
上述內(nèi)容就是怎么在python中利用互斥鎖分配資源,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。