关于python:Python多任务编程多线程的使用

44次阅读

共计 874 个字符,预计需要花费 3 分钟才能阅读完成。

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()

运行后果:

正文完
 0