Python多任务编程——多线程的使用

1.导入线程包


import threading


在 CPython 中,由于存在 全局解释器锁,同一时刻只有一个线程可以执行 Python 代码(虽然某些性能导向的库可能会去除此限制)。 如果你想让你的应用更好地利用多核心计算机的计算资源,推荐你使用 multiprocessing 或 concurrent.futures.ProcessPoolExecutor。 但是,如果你想要同时运行多个 I/O 密集型任务,则多线程仍然是一个合适的模型。


2.创建线程


threading.Thread(group=None, target=None, name=None, args=(), kwargs={}, *, daemon=None)

group: 为以后的ThreadGroup类预留

name 为线程名字,一般不用设置

target: 被执行的对象,由run()方法执行

args: target元组传参

kwargs:target字典传参

daemon: 是否为守护进程


demo1_process = threading.Thread(target = dance)
demo2_process = threading.Thread(target = sing)


3.启动线程


常用方法:使用start方法

dance_process.start()
sing_process.start()

4.代码实现


#导入线程模块
import threading
import time

def dance():
    for i in range(3):
        print("dance...")
        time.sleep(0.5)

def sing():
    for i in range(3):
        print("sing...")
        time.sleep(0.5)



if __name__ == "__main__":
#创建线程    
    dance_process=threading.Thread(target=dance)
    sing_process=threading.Thread(target=sing)
#启动线程
    dance_process.start()
    sing_process.start()

运行结果:

Python多任务编程——多线程的使用


上一篇:Python多任务编程——多进程的使用


下一篇:四步搞定企业安全项目监控和度量文档