#! -*- encoding:utf-8 -*-
import threading
from time import ctime, sleep
# 单参函数,内有全局变量
def func1(arg1):
global a
a = 0
while True:
print "我是" + arg1 + ",现在时间是:" + ctime()
a += 1
sleep(1)
def func2(arg2, arg3):
while True:
print "我是" + arg2 + arg3 + "现在时间是:" + ctime()
sleep(5)
# 可以读取到全局变量
def func3():
while True:
print a
sleep(3)
# 把所有线程都装进数组就感觉屌屌的
threads = []
t1 = threading.Thread(target=func1, args=('1',)) # 第一个参数是线程函数变量,第二个参数args是一个数组变量参数
threads.append(t1)
t2 = threading.Thread(target=func2, args=('2', '3',)) # 如果只传递一个值,就只需要i, 如果需要传递多个参数,还可以继续写,其中的逗号不能少
threads.append(t2)
t3 = threading.Thread(target=func3)
threads.append(t3)
if __name__ == '__main__':
for t in threads:
t.setDaemon(True) # 守护线程
t.start() # 开启线程
t.join() # 等到所有线程结束后才会结束主函数
python线程的使用方法以及全局变量的应用
最新推荐文章于 2024-05-16 03:18:22 发布