
前言:
进程和线程的一些区别:
1.根本区别:进程是 *** 作系统资源分配的基本单位,而线程是任务调度和执行的基本单位,线程需要CPU来调度执行
2.没有进程就没有线程,计算机为进程分配资源内存等,进程再给线程分配资源,计算机不会单独为线程分配资源。
3.可以这样想,pycharm这个编辑器就是一个进程,相对于pycharm而言,在其中创建的.py文件就是一个个线程,而相对于.py文件而言,代码又是一个个线程,
4.进程切换开销大,二线程开销要小的多,并且每个线程都有自己独立的运行栈和程序计数器(PC)。
接下来看一下简单的双线程的实现,首先明白为什么用多线程——> 是为了实现多并发提高效率!
import threading # 线程模块
import time # 清晰的显示线程实现了并发
# 唱歌
def sing():
for i in range(3):
print("正在唱歌...%d"%i)
time.sleep(0.2)
print("sing当前执行的线程为:",threading.current_thread())
# 跳舞
def dance():
for i in range(3):
print("正在跳舞。。。%d"%i)
time.sleep(0.2)
print("dance当前执行的线程为:",threading.current_thread())
if __name__ == '__main__': # 入口函数
sing_thread = threading.Thread(target=sing)
dance_thread = threading.Thread(target=dance)
sing_thread.start()
dance_thread.start()
运行后的结果为:
可以很明显看到线程之间交替执行,实现了并发
感谢观看!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)