进程:不同进程拥有各自的内存空间 线程: 线程属于进程,内存是共享的 操作系统内可以运行多个进程,叫多任务运行 一个进程内可以运行多个线程,叫多线程运行 并行执行:同一时间做不同的工作,线程和进程都可以并行执行 不同的程序同时运行,叫做多任务并行执行 一个进程内多个线程同时运行,叫做多线程并行执行 python 的多线程可以通过 threading 模块来实现
多线程步骤:
- # 导入
- import threading
- # 使用多线程
- hread_obj = threading.Thread([group[,target[,name[,args,[,kwargs]]]]])
- # 开启多线程
- thread_obj.start()
案例:
- # 多线程并行执行
- import time
- import threading
-
-
- def sing():
- while True:
- print("唱歌")
- time.sleep(1)
-
-
- def dance():
- while True:
- print("跳舞")
- time.sleep(1)
-
-
- if __name__ == '__main__':
- # sing() # 单线程
- # dance() # 单线程
- sing_thread = threading.Thread(target=sing) # 多线程
- dance_thread = threading.Thread(target=dance) # 多线程
-
- # 让线程干活
- sing_thread.start()
- dance_thread.start()
传参:args参数通过元组(按参数顺序)的方式传递;或使用kwargs参数用字典的形式传参
- import time
- import threading
-
-
- def sing(msg):
- while True:
- print(msg)
- time.sleep(1)
-
-
- def dance(msg):
- while True:
- print(msg)
- time.sleep(1)
-
-
- if __name__ == '__main__':
- # sing() # 单线程
- # dance() # 单线程
- sing_thread = threading.Thread(target=sing,args=("hi,hhhhh",)) # 多线程
- dance_thread = threading.Thread(target=dance,kwargs={"msg":"hello,hhhhhh"}) # 多线程
-
- # 让线程干活
- sing_thread.start()
- dance_thread.start()