微蓝网分享经验,让生活更简单!移动APP免费注册登录

Python多线程threading模块中Thread类如何使用-python多线程执行函数

阅读:29次 时间:2023-12-10 10:01:17来源:用户
最佳经验
由作者撰写原创经验并推荐置顶

Python多线程threading模块中Thread类如何使用,python的thread模块是比较底层的模块,python的threading模块是对thread做了包装的,使用起来更加方便,这里用Ubuntu虚拟机写一个Python多线程简单案例,以下内容是由微蓝经验网用户发布Python多线程threading模块中Thread类如何使用-python多线程执行函数,希望对于用户有一定帮助,为朋友进行解决疑惑,如若想了解更多相关内容,可以向底部移动了解更多与本教程文章相关解决经验方法!

工具与材料

Python3;Ubuntu虚拟机

方法/步骤
  1. 1

    打开Ubuntu虚拟机,登录系统,在桌面空白处右键 -- 打开终端。

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  2. 2

    在终端使用gedit创建一个thr,py文件并打开,命令如下:

    gedit thr,py

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  3. 3

    在thr,py文件编写代码如下:

    import datetime,time

    def tellMe(msg):

    print (msg)

    time,sleep(1)

    if __name__ == '__main__':

    print ('主线程')

    begin = datetime,datetime,now()

    for i in range(5):

    tellMe('do something')

    end = datetime,datetime,now()

    print ((end-begin),seconds)

    这里只有一个线程,并没有使用多线程

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  4. 4

    保存代码,在终端运行代码,命令如下:

    python3 thr,py

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  5. 5

    代码运行,结果如下图,总共执行时间是5秒。

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  6. 6

    修改代码,使用threading模块的Thread类,通过多线程达到上面的效果,代码如下:

    import datetime,time

    from threading import Thread

    def tellMe(msg):

    print (msg)

    time,sleep(1)

    if __name__ == '__main__':

    print ('主线程')

    begin = datetime,datetime,now()

    for i in range(5):

    t = Thread(target=tellMe,args=('do something',))

    t,start()

    end = datetime,datetime,now()

    print ((end-begin),seconds)

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
  7. 7

    保存代码,在终端运行代码,命令如下:

    python3 thr,py

    打印出代码执行时间是0,但是实际会过一会再弹出Ubuntu系统的提示符,这是因为通过主线程计算出代码执行时间,这是不准确的,因为主线程是在所有线程结束后才结束,实际等待过程差不多就是子线程最耗时的1秒。

    Python多线程threading模块中Thread类如何使用-python多线程执行函数
THE END
分享到:
免责声明:本文来自微蓝网用户分享,不代表微蓝网的立场。
作者信息

新手帮助关于我们招聘信息反馈投诉免责声明服务协议最新文章

微蓝网部分素材(图片、视频、音频等)来自于网络,不代表本站立场,以上素材或内容仅代表作者个人观点,因此产生相关问题作者本人负责,本站将不承担任何法律责任! 如有问题请进行侵权投诉

© 2025 VLPOS.com 版权所有 微蓝网 ICP备案号:黑ICP备20003952号-1  黑公网安备 23012602000120号