python之多线程原理

Posted

tags:

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

参考技术A 并发:逻辑上具备同时处理多个任务的能力。
并行:物理上在同一时刻执行多个并发任务。

举例:开个QQ,开了一个进程,开了微信,开了一个进程。在QQ这个进程里面,传输文字开一个线程、传输语音开了一个线程、弹出对话框又开了一个线程。
总结:开一个软件,相当于开了一个进程。在这个软件运行的过程里,多个工作同时运转,完成了QQ的运行,那么这个多个工作分别有多个线程。

线程和进程之间的区别:

进程在python中的使用,对模块threading进行操作,调用的这个三方库。可以通过 help(threading) 了解其中的方法、变量使用情况。也可以使用 dir(threading) 查看目录结构。

current_thread_num = threading.active_count() # 返回正在运行的线程数量
run_thread_len = len(threading.enumerate()) # 返回正在运行的线程数量
run_thread_list = threading.enumerate() # 返回当前运行线程的列表
t1=threading.Thread(target=dance) #创建两个子线程,参数传递为函数名
t1.setDaemon(True) # 设置守护进程,守护进程:主线程结束时自动退出子线程。
t1.start() # 启动子线程
t1.join() # 等待进程结束 exit()`# 主线程退出,t1子线程设置了守护进程,会自动退出。其他子线程会继续执行。

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

python高性能代码之多线程优化

python高级之多线程

Python之多进程多线程

Python之多线程:线程互斥与线程同步

python之多线程

Python之多任务编程线程