python的學習(七)----多執行緒程式設計(1)

linda1000發表於2012-11-12

python中的多執行緒程式設計(一)
    -------python核心程式設計學習
1. 多執行緒的作用
簡而言之,多執行緒是並行處理相互獨立的子任務,從而大幅度提高整個任務的效率。

2. Python中的多執行緒模組
Python中提供幾個用於多執行緒程式設計的模組,包括thread,threading和Queue等

thread模組提供了基本的執行緒和鎖的支援,除產生執行緒外,也提供基本的同步資料結構鎖物件,其中包括:
start_new_thread(function, args kwargs=None)  產生一個新的執行緒來執行給定函式
allocate_lock()  分配一個LockType型別的鎖物件
exit() 讓執行緒退出
acquire(wait=None) 嘗試獲取鎖物件
locked()  如果獲取了鎖物件返回TRUE,否則返回FALSE
release()  釋放鎖

threading提供了更高階別,功能更強的執行緒管理功能
Thread類 表示一個執行緒的執行的物件
Lock 鎖原語物件
RLock 可重入鎖物件,使單執行緒可以再次獲得已經獲取鎖

queue模組允許使用者建立一個可以用於多個執行緒之間共享資料的佇列資料結構
可用於程式間的通訊,讓各個執行緒之間共享資料
模組函式queue(size)  建立一個大小為size的Queue物件
queue物件函式 qsize()  返回佇列大小
                empty()  佇列為空返回True,否則返回False
                       put(item, block=0)  把ITEM放到佇列中,block不為0,函式會一直阻塞到佇列中
                get(block=0) 從佇列中取一個物件,若果給block,函式會一直阻塞到佇列中有物件為止

相關文章