python多线程模块:threading使用方法(参数传递)

转自:http://www.mianfeidianhua.net/threading.html

先来看这段代码:

import threading

import time

def worker():

print “worker”

time.sleep(1)

return

for i in xrange(5):

 t = threading.Thread(target=worker)

 t.start()

这段代码就使用了多线程,但是没法传递参数,而实际使用多线程,往往是需要传递参数的,于是问了一位群里的网友后,知道可以这么写实现传递参数的多线程:

import threading

import time

def worker(number):

print “worker”

time.sleep(number)

return

for i in xrange(5):

t = threading.Thread(target=worker,args=(i,))

t.start()

第一个参数是线程函数变量,第二个参数args是一个数组变量参数,如果只传递一个值,就只需要i, 如果需要传递多个参数,那么还可以继续传递下去其他的参数,其中的逗号不能少,少了就不是数组了,就会出错。

你可能感兴趣的:(python)