参考链接: threading — 基于线程的并行
代码:
import threading
import time
class Thread4CXQ(threading.Thread):
def __init__(self, Thread4CXQ_Name):
super().__init__()
self.Thread4CXQ_Name = Thread4CXQ_Name
def run(self):
print('线程{}启动中...'.format(self.Thread4CXQ_Name))
for _ in range(5):
self.stepA()
time.sleep(1)
print('线程{},执行中,{}-5'.format(self.Thread4CXQ_Name,_+1))
self.stepB()
print('线程{}执行完毕!'.format(self.Thread4CXQ_Name))
def stepA(self):
print("线程{},step A正在执行...".format(self.Thread4CXQ_Name))
def stepB(self):
print("线程{},step B正在执行...".format(self.Thread4CXQ_Name))
if __name__ == '__main__':
t1 = Thread4CXQ('Qi')
t2 = Thread4CXQ('Min')
t1.start()
t2.start()
执行结果:
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
==== RESTART: C:\Users\chenxuqi\Desktop\News4cxq\测试多线程\继承Thread类实现创建线程.py ====
>>> 线程Qi启动中...线程Min启动中...
线程Qi,step A正在执行...线程Min,step A正在执行...
线程Qi,执行中,1-5线程Min,执行中,1-5
线程Qi,step B正在执行...线程Min,step B正在执行...
线程Qi,step A正在执行...线程Min,step A正在执行...
线程Qi,执行中,2-5线程Min,执行中,2-5
线程Qi,step B正在执行...线程Min,step B正在执行...
线程Qi,step A正在执行...线程Min,step A正在执行...
线程Qi,执行中,3-5线程Min,执行中,3-5
线程Qi,step B正在执行...线程Min,step B正在执行...
线程Qi,step A正在执行...线程Min,step A正在执行...
线程Min,执行中,4-5线程Qi,执行中,4-5
线程Min,step B正在执行...线程Qi,step B正在执行...
线程Min,step A正在执行...线程Qi,step A正在执行...
线程Min,执行中,5-5线程Qi,执行中,5-5
线程Min,step B正在执行...线程Qi,step B正在执行...
线程Min执行完毕!线程Qi执行完毕!
>>>
>>>