python学习-并发编程(十四),,14.2线程的创建与


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 83MainThread 99Thread-1 81Thread-2 84主线程执行完成!Thread-1 82Thread-2 85Thread-1 83...
first_thread

当python程序开始运行后,程序至少会创建一个主线程,主线程的线程执行体就是程序中的主程序-没有放在任何函数中的代码。

以上程序共包含三个线程,这三个线程的执行没有先后顺序,它们以并发方式执行:Thread-1执行一段时间,然后Thread-2或MainThread获得cpu执行一段时间,接下来又换其他线程执行,这就是典型的线程并发执行-cpu以快速轮换的方式在多个线程之间切换,从而给用户一种错觉:多个线程似乎同时在执行。

简言之,多线程就是让多个函数能并发执行,让普通用户感觉到多个函数似乎同时在执行。

在默认情况下 , 主线程的名字为 MainThread , 用户 启动的 多 个线程的名 字依次为 Thread-1 、 Thread-2, Thread-3

14.3线程的生命周期

14.4控制线程

14.7线程池

python学习-并发编程(十四)

评论关闭