python多線程threading.Lock鎖用法實例
來源:懂視網
責編:小采
時間:2020-11-27 14:31:24
python多線程threading.Lock鎖用法實例
python多線程threading.Lock鎖用法實例:本文實例講述了python多線程threading.Lock鎖的用法實例,分享給大家供大家參考。具體分析如下: python的鎖可以獨立提取出來 代碼如下:mutex = threading.Lock() #鎖的使用 #創建鎖 mutex = threading.Lock() #鎖定 mutex.ac
導讀python多線程threading.Lock鎖用法實例:本文實例講述了python多線程threading.Lock鎖的用法實例,分享給大家供大家參考。具體分析如下: python的鎖可以獨立提取出來 代碼如下:mutex = threading.Lock() #鎖的使用 #創建鎖 mutex = threading.Lock() #鎖定 mutex.ac

本文實例講述了python多線程threading.Lock鎖的用法實例,分享給大家供大家參考。具體分析如下:
python的鎖可以獨立提取出來
代碼如下:
mutex = threading.Lock()
#鎖的使用
#創建鎖
mutex = threading.Lock()
#鎖定
mutex.acquire([timeout])
#釋放
mutex.release()
鎖定方法acquire可以有一個超時時間的可選參數timeout。如果設定了timeout,則在超時后通過返回值可以判斷是否得到了鎖,從而可以進行一些其他的處理。
代碼如下:
#!/usr/bin/env python
#coding=utf-8
import threading
import time
class MyThread(threading.Thread):
def run(self):
global num
time.sleep(1)
if mutex.acquire(1):
num = num+1
msg = self.name+' set num to '+str(num)
print msg
mutex.release()
num = 0
mutex = threading.Lock()
def test():
for i in range(5):
t = MyThread()
t.start()
if __name__ == '__main__':
test()
Thread-1 set num to 1
Thread-3 set num to 2
Thread-4 set num to 3
Thread-5 set num to 4
Thread-2 set num to 5
希望本文所述對大家的Python程序設計有所幫助。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
python多線程threading.Lock鎖用法實例
python多線程threading.Lock鎖用法實例:本文實例講述了python多線程threading.Lock鎖的用法實例,分享給大家供大家參考。具體分析如下: python的鎖可以獨立提取出來 代碼如下:mutex = threading.Lock() #鎖的使用 #創建鎖 mutex = threading.Lock() #鎖定 mutex.ac