Bootstrap

python线程类实例参数传递_Python | 多线程

threading模块

线程简述

线程(轻量级进程)与进程类似,不过它们是在同一个进程下执行的,并共享相同的上下文。可以将它们认为是在一个主进程或"主线程"中并行运行的一些"迷你进程"。

线程包括开始、执行顺序和结束三部分。它有一个指令指针,用于记录运行的上下文。它其他线程运行时,它可以被抢占(中断)和临时挂起(睡眠/加锁)---这种做法叫做让步(yielding)。

多线程的创建

使用Thread类,可以有很多方法来创建线程,其中常用的有:

创建Thread的示例,传给它一个函数;

派生Thread的子类,重新run方法,并创建子类的实例。

示例1:创建Thread的实例,传给它一个函数

from threading import Thread

import time

def test():

print("---hello-world---")

time.sleep(1)

for i in range(5):

#创建线程,线程执行的任务是target指定的函数,如果函数需要传入参数,则可以指定args=(),或者kwargs={}

t = Thread(target=test)

t.start()

运行结果:

---hello-world---

---hello-world---

---hello-world---

---hello-world---

---hello-world---

示例2:使用Thread子类创建线程

import threading

import time

# 自定义类继承threading类

class myThread(threading.Thread):

# 重新run方法

def run(self):

for i in range(3):

time.sleep(1)

msg = "I'm " + self.name+' @ '+s

;