python学习-并发编程(十四)
Posted 爱打盹的猫猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习-并发编程(十四)相关的知识,希望对你有一定的参考价值。
14.2线程的创建与启动
import threading # 定义一个普通的action函数,该函数准备作为线程执行体 def action(max): for i in range(max): print(threading.current_thread().getName() + " " + str(i)) # 下面是主程序(也就是主线程的执行体) for i in range(100): print(threading.current_thread().getName() + " " + str(i)) if i == 20: # 创建并启动第一个线程 t1 = threading.Thread(target=action, args=(100,)) t1.start() # 创建并启动第二个线程 t2 = threading.Thread(target=action, args=(100,)) t2.start() print(‘主线程执行完成!‘) 输出结果: ... Thread-2 83 MainThread 99 Thread-1 81 Thread-2 84 主线程执行完成! Thread-1 82 Thread-2 85 Thread-1 83 ...
当python程序开始运行后,程序至少会创建一个主线程,主线程的线程执行体就是程序中的主程序-没有放在任何函数中的代码。
以上程序共包含三个线程,这三个线程的执行没有先后顺序,它们以并发方式执行:Thread-1执行一段时间,然后Thread-2或MainThread获得cpu执行一段时间,接下来又换其他线程执行,这就是典型的线程并发执行-cpu以快速轮换的方式在多个线程之间切换,从而给用户一种错觉:多个线程似乎同时在执行。
简言之,多线程就是让多个函数能并发执行,让普通用户感觉到多个函数似乎同时在执行。
在默认情况下 , 主线程的名字为 MainThread , 用户 启动的 多 个线程的名 字依次为 Thread-1 、 Thread-2, Thread-3
14.3线程的生命周期
14.4控制线程
14.7线程池
以上是关于python学习-并发编程(十四)的主要内容,如果未能解决你的问题,请参考以下文章
《Python编程从入门到实践》——学习python的第十四天