http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/
http://www.hacker.com.cn/article/view_14446.html
http://code.activestate.com/recipes/302746/
http://www.davidnaylor.co.uk/threaded-data-collection-with-python-including-examples.html
以上是我找到的Python關於Threading的文章,對於我在寫Python multi-thread上面還蠻有參考價值的,其實非常的簡單,只要寫好Thread Object,然後帶一個Queue的物件,然後把你要傳的東西put,任何東西都可以,然後Thread Object就會get,就可以做到multi-thread,個人認為Python的官方網站,基本上只是reference,沒有教學的範例,除非有寫過的人才有用,不然根本看不懂怎麼寫。
貼一下程式碼好了
import threading, Queue
class ClientThread(threading.Thread):
def run(self):
while True:
item=Pool.get()#這裡可以接任何東西
if item != None:
#do your work
Pool.task_done()#告訴Queue工作完成
Pool = Queue.Queue(0)
for x in range(num_of_threads):
ClientThread.start()#要開幾個threads
while (xxx):#條件式自己設定
Pool.put(xxx)#Put item進去
Pool.join()#等到所有的job都做完
沒有留言:
張貼留言