日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python線程鎖如何完成模塊建設

Python線程鎖需要我們不斷的學習相關技術,其實在有些時候我們在不斷的學習中也能尋找出問題解決的方案。多線程是程序設計中的一個重要方面,尤其是在服務器Deamon程序方面。無論何種系統(tǒng),線程調度的開銷都比傳統(tǒng)的進程要快得多。

站在用戶的角度思考問題,與客戶深入溝通,找到長嶺網(wǎng)站設計與長嶺網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設計、網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、空間域名、雅安服務器托管、企業(yè)郵箱。業(yè)務覆蓋長嶺地區(qū)。

Python可以方便地支持多線程??梢钥焖賱?chuàng)建線程、互斥鎖、信號量等等元素,支持線程讀寫同步互斥。美中不足的是,Python的運行在Python虛擬機上,創(chuàng)建的多線程可能是虛擬的線程,需要由Python虛擬機來輪詢調度,這大大降低了Python多線程的可用性。希望高版本的Python可以解決這個問題,發(fā)揮多CPU的***效率。
網(wǎng)上有些朋友說要獲得真正多CPU的好處,有兩種方法:

1.可以創(chuàng)建多個進程而不是線程,進程數(shù)和cpu一樣多。

2.使用Jython 或 IronPython,可以得到真正的多線程。

Python線程鎖創(chuàng)建

使用threading模塊的 Thread類,類接口如下

 
 
 
  1. class Thread( group=None, target=None, name=None, 
    args=(), kwargs={}) 

需要關注的參數(shù)是target和args. target 是需要子線程運行的目標函數(shù),args是函數(shù)的參數(shù),以tuple的形式傳遞。
以下代碼創(chuàng)建一個指向函數(shù)worker 的子線程

 
 
 
  1. def worker(a_tid,a_account):  
  2. ...  
  3. th = threading.Thread(target=worker,args=(i,acc) ) ; 

 

啟動Python線程鎖

 
 
 
  1. th.start() 

等待線程返回threading.Thread.join(th)或者th.join()

如果你可以對要處理的數(shù)據(jù)進行很好的劃分,而且線程之間無須通信,那么你可以使用:創(chuàng)建=》運行=》回收的方式編寫你的多線程程序。但是如果線程之間需要訪問共同的對象,則需要引入互斥鎖或者信號量對資源進行互斥訪問。

下面講講如何創(chuàng)建互斥鎖,創(chuàng)建鎖

 
 
 
  1. g_mutex = threading.Lock()  
  2. .... 

使用Python線程鎖

 
 
 
  1. for ... :  
  2. #鎖定,從下一句代碼到釋放前互斥訪問  
  3. g_mutex.acquire()  
  4. a_account.deposite(1)  
  5. #釋放  
  6. g_mutex.release() 

以上就是對Python線程鎖的系統(tǒng)介紹希望大家有所收獲。


網(wǎng)頁標題:Python線程鎖如何完成模塊建設
本文路徑:http://m.5511xx.com/article/cogdgop.html