python多线程

Posted 测试董先生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python多线程相关的知识,希望对你有一定的参考价值。

单线程 一个人干活  线程和线程之间是相互独立的

多线程,多个人干活  

线程是最小的单位  ,一个进程包含多个线程  

一个python文件就是一个进程 

单线程实现代码 

import threading
import time
def ces():
print(‘打算卫士 ‘)
time.sleep(2)

def xiyify():
print(‘洗衣服‘)
time.sleep(3)
def zuofan():
print(‘做饭‘)
time.sleep(1)
star=time.time()
ces()
xiyify()
zuofan()
end=time.time()
print(end-star)
多线程实现代码
import threading
import time
def ces():
print(‘打算卫士 ‘)
time.sleep(2)

def xiyify():
print(‘洗衣服‘)
time.sleep(3)
def zuofan():
print(‘做饭‘)
time.sleep(1)
stars=time.time()
C=threading.Thread(target=ces)
C1=threading.Thread(target=xiyify)
C2=threading.Thread(target=zuofan)
C.start()
C1.start()
C2.start()
end_time=time.time()
print(end_time-stars)

思考多线程有几个线程????????????什么时候用到多线程??/多线程代码有三个线程为什么执行时间才不到1s执行 ?
有四个线程 一个主线程 三个多线程
当执行脚本时间太长需要用到多线程节省时间
因为 我们的代码结果是主线程的时间 想要看到多线程的执行时间就要更改代码,让主线程等多线程执行完毕在执行主线程

import threading
import time
def ces():
print(‘打算卫士 ‘)
time.sleep(2)

def xiyify():
print(‘洗衣服‘)
time.sleep(3)
def zuofan():
print(‘做饭‘)
time.sleep(1)
stars=time.time()
C=threading.Thread(target=ces)
C1=threading.Thread(target=xiyify)
C2=threading.Thread(target=zuofan)
C.start()
C1.start()
C2.start()
#先让你们都干活,干完活了在等待
C.join()#加等待时间等待
C1.join()#加等待时间等待
C2.join()#加等待时间等待
end_time=time.time()
print(end_time-stars)









































































以上是关于python多线程的主要内容,如果未能解决你的问题,请参考以下文章

[Python3] 043 多线程 简介

python中的多线程和多进程编程

多线程 Thread 线程同步 synchronized

多个用户访问同一段代码

在 Python 多处理进程中运行较慢的 OpenCV 代码片段

线程学习知识点总结