Python之多线程学习【1】:开启线程,查看线程,join方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_36499794/article/details/102745989

注意看代码注释,注意看运行结果

一. 开启线程

import threading
import time


def thread_job():
    print('T1 start','\n')
    for i in range(10):
        print(i)
        time.sleep(0.2)
    print('T1 finish\n')


def main():
    add_thread = threading.Thread(target=thread_job) # 添加一个线程,目标是做一个job
    add_thread.start() # 开始运行添加的线程


if __name__ == '__main__':
    main()

二. 查看线程数量,查看当前线程

import threading
import time


def thread_job():
    print('T1 start','\n')
    for i in range(10):
        print(i)
        time.sleep(0.2)
    print('T1 finish\n')


def main():
    add_thread = threading.Thread(target=thread_job) # 添加一个线程,目标是做一个job
    add_thread.start() # 开始运行添加的线程
    print(threading.active_count()) # 输出线程的数量
    print(threading.enumerate())
    print(threading.current_thread()) # 输出当前正在运行的线程


if __name__ == '__main__':
    main()

三. join方法

import threading
import time


def thread_job():
    print('T1 start','\n')
    for i in range(10):
        print(i)
        time.sleep(0.2)
    print('T1 finish\n')


def thread_job_2():
    print('T2 start\n')
    print('T2 finish\n')


def main():
    add_thread = threading.Thread(target=thread_job) # 添加一个线程,目标是做一个job
    add_thread_2 = threading.Thread(target=thread_job_2)
    add_thread.start() # 开始运行添加的线程
    add_thread_2.start()
    add_thread_2.join() # 代表必须等线程运行完了,才会去运行下面的内容
    add_thread.join()
    print('all_thread done')

    # print(threading.active_count()) # 输出线程的数量
    # print(threading.enumerate())  # 输出有哪些线程在运行
    # print(threading.current_thread()) # 输出当前正在运行的线程


if __name__ == '__main__':
    main()

预期:all_thread done最后输出

猜你喜欢

转载自blog.csdn.net/qq_36499794/article/details/102745989