网站建设资讯

NEWS

网站建设资讯

Python多线程(一)——创建多线程-创新互联

创建多线程

python支持两种创建多线程的方式:

创新互联主要从事网站设计制作、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务桂阳,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
  • 通过 threading.Thread () 创建。
thread.Thread(group=None,name='Tread-x',targt=None,args=(),kwargs={},daemon=None)

参数介绍:

语法含义
group一般不用
name线程名
targt目标函数
args目标函数的参数,数据类型:元祖。与kwargs水火不容,只存在一个参数即可
kwargs目标函数的参数,数据类型:字典。与args水火不容,只存在一个参数即可
daemon用来设置线程是否随主线程退出而退出
  • 通过继承 threading.Thread 类。
class mythread(threading.Thread)
一、threading.Thread () 实例
import threading

def test_thread(arg1,arg2):
      for i in range(arg1,arg2):
            print(threading.current_thread().name,i)

if __name__=="__main__":
      thread1 = threading.Thread(name='t1',target= test_thread,args=(1,10))
      thread2 = threading.Thread(name='t2',target= test_thread,kwargs={"arg1":101,"arg2":110})
      thread1.start()   #启动线程1
      thread2.start()   #启动线程2

输出:

t1 1
t1 2
t1 3
t2 101
t1 4
t1 5
t1 6
t1 7
t1 8
t1 9
t2 102
t2 103
t2 104
t2 105
t2 106
t2 107
t2 108
t2 109
二、继承 threading.Thread 实例
import threading
 

class MyThread(threading.Thread):
    def __init__(self, threadName,arg1,arg2):
        super(MyThread, self).__init__(name=threadName)
        self.arg1=arg1
        self.arg2=arg2

    def run(self):
        for i in range(self.arg1,self.arg2):
            print(self.name, i)
            
 
if __name__=="__main__":
    MyThread('t1',1,10).start() #启动线程1
    MyThread('t2',101,110).start() #启动线程2

输出:

t1 1
t1 2
t1 3
t1 4
t2 101
t2 102
t1 5
t2 103
t2 104
t1 6
t2 105
t2 106
t1 7
t2 107
t1 8
t1 9
t2 108
t2 109

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章名称:Python多线程(一)——创建多线程-创新互联
网页路径:http://cdweb.net/article/pocoo.html