美文网首页
Python多线程编程——创建线程的两个方法

Python多线程编程——创建线程的两个方法

作者: 振礼硕晨 | 来源:发表于2018-10-19 13:50 被阅读0次

之前的一篇文章:Python多线程编程——多线程基础介绍,主要介绍了线程的基本知识,以及使用Python创建线程的一个简单的方法。
在之前的一篇文章的基础之上,给大家介绍使用Python进行多线程编程的时候,创建多个线程的两个方法。

一、使用函数来创建线程

使用函数来创建线程,顾名思义,就是我们把要完成的任务封装成一个个函数,然后使用 threading 库中的 threading.Thread(target=) 函数来创建线程,其中传给target的就是我们创建的函数。

比如我们要创建两个线程,一个线程用来执行 写字 这个任务,一个线程用来执行 绘画 这个任务,那么就可以将这两个任务封装成函数,然后再进行创建进程。示例代码如下:

import time
import threading


def writing():
    print("我正在写字")
    time.sleep(1)  # 沉睡1秒,方便我们看到执行的过程


def drawing():
    print("我正在绘画")
    time.sleep(1)  # 沉睡1秒,方便我们看到执行的过程


def main():
    t1 = threading.Thread(target=writing)  # 创建线程t1
    t2 = threading.Thread(target=drawing)  # 创建线程t2
    t1.start()  # 开始线程
    t2.start()  # 开始线程
    time.sleep(1)  # 沉睡1秒,方便我们看到执行的过程


if __name__ == '__main__':
    main()
    main()
    main()

二、使用类来创建线程

除了使用函数来创建线程外,我们还可以使用类来创建线程。而且在实际的应用中,我们大多数情况下是使用类来创建线程,这样更好的体现出封装的概念。

与上面一样,我们要创建两个线程,分别用来执行 写字 任务和 绘画 任务。我们就可以创建写字和绘画的类。注意,这两个类是继承自 threading.Thread 类的,类创建好之后,我们要重写其中的 run 函数,把我们需要完成的动作写在 run 函数里面。

最后使用类来创建线程,示例代码如下:

import time
import threading


# 创建继承自threading.Thread的类,并重写其中的run函数
class Writing(threading.Thread):
    def run(self):
        print("我正在写字")


# 创建继承自threading.Thread的类,并重写其中的run函数
class Drawing(threading.Thread):
    def run(self):
        print("我正在绘画")


def main():
    t1 = Writing()  # 使用类来创建线程
    t2 = Drawing()  # 使用类来创建线程
    t1.start()
    t2.start()

    time.sleep(1)


if __name__ == '__main__':
    main()
    main()
    main()

三、最终的效果展示

相关文章

  • Python多线程编程——创建线程的两个方法

    之前的一篇文章:Python多线程编程——多线程基础介绍,主要介绍了线程的基本知识,以及使用Python创建线程的...

  • Python 3 多线程编程

    本文主要基于python 3.5实现多线程编程 1. 创建多线程 2. 多线程间的同步,lock机制 3. que...

  • Java学习总结——多线程编程

    Java多线程编程 一、创建线程的方法一: 继承:extends Thread 重写run()方法 举个栗子?: ...

  • Python多线程编程——多线程编程中的加锁机制

    如果大家对Python中的多线程编程不是很了解,推荐大家阅读之前的两篇文章:Python多线程编程——多线程基础介...

  • Python 多线程笔记

    Python 多线程笔记 创建线程 1. 使用函数创建多线程 2. 使用类创建多线程 继承 Thread 类 重写...

  • Python 并行编程

    多线程编程 Python 主要提供了包括thread、threading、Queue等多线程编程模块。thread...

  • 5-线程(补充)

    Python多线程原理与实战 目的: (1)了解python线程执行原理 (2)掌握多线程编程与线程同步 (3)了...

  • 多线程

    Python多线程原理与实战 目的: (1)了解python线程执行原理 (2)掌握多线程编程与线程同步 (3)了...

  • python3创建多线程的几种方法

    python3创建多线程主要有下面两种方法:函数、类 1.函数创建多线程 python3中,提供了一个内置模块th...

  • python多线程入门之旅一

    所有代码来自python核心编程 参考python核心编程一书,学习多线程工作模式,多线程实现主要模块thread...

网友评论

      本文标题:Python多线程编程——创建线程的两个方法

      本文链接:https://www.haomeiwen.com/subject/itajzftx.html