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 threadingimport timedef 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()
运行后果: