码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2019-10-10 22:55:30      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:多线程   定义   port   ide   for   主线程   threading   range   获得   

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
...
first_thread

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

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

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

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

14.3线程的生命周期

14.4控制线程

14.7线程池

 

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

标签:多线程   定义   port   ide   for   主线程   threading   range   获得   

原文地址:https://www.cnblogs.com/wang-mengmeng/p/11650731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!