zoukankan      html  css  js  c++  java
  • python多线程同时执行2个函数任务之threading

    本文讲述2个函数任务,使用python的多线程同时执行这2个任务

    # 功能1:如下代码实现了任务task1和task2同步进行,提高了效率。

     1 # coding:utf-8
     2 
     3 from threading import Thread  # 导入线程函数
     4 from time import sleep  # 导入时间休眠函数
     5 
     6 
     7 def task1(n):  # 定义任务1
     8     for x in range(n):  # 遍历数组n里的x
     9         print("正在运行任务1,打印:", x)  # 打印正则运行任务1,打印x的值
    10     sleep(0.5)  # 时间休眠0.5秒
    11 
    12 
    13 def task2():  # 定义任务2
    14     list1 = ["北京欢迎您", "红日", "故宫的记忆", "义勇军进行曲"]  # 定义列表1位4首歌曲名
    15     for info in list1:  # 遍历list1里的信息
    16         print("正在运行任务2,听音乐:", info)  # 打印正在运行任务2,听音乐:音乐名称
    17     sleep(0.6)  # 时间休眠0.6秒
    18 
    19 
    20 def main():  # 定义main函数
    21     t1 = Thread(target=task1, args=(6,))  # 定义线程t1,线程任务为调用task1函数,task1函数的参数是6
    22     t2 = Thread(target=task2)  # 定义线程t2,线程任务为调用task2函数,task2函数无参数
    23     t1.start()  # 开始运行t1线程
    24     t2.start()  # 开始运行t2线程
    25 
    26 
    27 if __name__ == '__main__':
    28     main()  # 调用main函数

    执行结果:

    # 功能2:如下代码实现了任务1完成了再执行任务2,代码示例如下:

     1 # coding:utf-8
     2 
     3 from threading import Thread  # 导入线程函数
     4 from time import sleep  # 导入时间休眠函数
     5 
     6 
     7 def task1(n):  # 定义任务1
     8     for x in range(n):  # 遍历数组n里的x
     9         print("正在运行任务1,打印:", x)  # 打印正则运行任务1,打印x的值
    10     sleep(0.5)  # 时间休眠0.5秒
    11 
    12 
    13 def task2():  # 定义任务2
    14     list1 = ["北京欢迎您", "红日", "故宫的记忆", "义勇军进行曲"]  # 定义列表1位4首歌曲名
    15     for info in list1:  # 遍历list1里的信息
    16         print("正在运行任务2,听音乐:", info)  # 打印正在运行任务2,听音乐:音乐名称
    17     sleep(0.6)  # 时间休眠0.6秒
    18 
    19 
    20 def main():  # 定义main函数
    21     t1 = Thread(target=task1, args=(6,))  # 定义线程t1,线程任务为调用task1函数,task1函数的参数是6
    22     t2 = Thread(target=task2)  # 定义线程t2,线程任务为调用task2函数,task2函数无参数
    23     t1.start()  # 开始运行t1线程
    24     t1.join()  # t1线程完成了才执行后续的动作
    25     t2.start()  # 开始运行t2线程
    26 
    27 
    28 if __name__ == '__main__':
    29     main()  # 调用main函数

    执行结果:

    参考链接:http://www.kgula.com/article/1944270.html

  • 相关阅读:
    Arduino nano的bootloader文件烧录
    arduino通信问题的学习与解决
    arduino中的serial .available()和serial.read()
    arduino 通过串口接收string,int类型数据
    Arduino读取串口数据并进行字符串分割
    Arduino 的读串口与写串口
    代理模式
    策略模式
    python中的深拷贝
    Python中的三个特殊函数
  • 原文地址:https://www.cnblogs.com/sunshine-blog/p/12186162.html
Copyright © 2011-2022 走看看