Python教程

Python基础语法之多线程

本文主要是介绍Python基础语法之多线程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

只有最基础用法,待更新补充

 

python的多线程依靠threading和_thread模块实现,但_thread被淘汰。现只使用threading模块 多线程是为了同时间段运行多段代码,即并发。利用时间等待片段去干其他事。 并行一般为多处理器处理多个事件,python多进制可以实现并行。

import threading

import time

# 定义一个函数
def fun(args):
    print(f'我是线程{args}')
    time.sleep(2)
    print(f'线程{args}结束\n')


'''
下方的Thread方法参数:
函数参数可以是一个表达式。为什么设置线程时使用target=fun格式呢?也许因为线程原函数作用域
存在一个target变量需要赋值发挥作用
赋值给args的必须是一个元祖,但元祖只有一个项时,需要添加逗号避免被识别为数字

执行线程操作时,不会等待t1执行完毕,而是t1传递到一个线程执行马上回到主线程
'''
t1 = threading.Thread(target=fun, args=(1,))
t2 = threading.Thread(target=fun, args=(2,))
start_time = time.time()  
t1.start()
t2.start()
end_time = time.time()    
print(f'\n启动两个线程花费{end_time - start_time}')

输出情况:两个线程谁更快结束是一个随机事件。尽管线程1先启动,但这点时间可以忽略不计

这篇关于Python基础语法之多线程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!