参考视频
# 进程:就是一个程序,运行在系统之上,那么便称之这个程序为一个运行进程,并分配进程ID方便系统管理。
# 线程:归属于进程的,一个进程可以开启多个线程,执行不同的工作,是进程的实际工作最小单位。
# 操作系统中可以运行多个进程,即多任务进行
# 一个进程内可以运行多个线程,即多线程运行
# 进程之间是内存隔离的,即不同的进程拥有各自的内层空间,类似于不同的公司拥有不同的办公场所
# 线程之间是内存共享的,线程是属于进程的,一个进程内的多个线程之间是共享这个进程所拥有的内存空间的。
# 并行执行指同一时间做不同的工作。
# 多个进程同时进行,即不同的程序同时运行,称之为多任务并行执行。
# 一个进程内多个线程同时在运行,称之为多线程并行执行。
# Python的多线程可以通过threading模块来实现
# import threading
#
# thread_obj = threading.Thread([group [, target [,name [, args [, kwargs]]]])
# -group:暂时无用,未米功能的预留参数
# -target:执行的目标任务名
# -args:以元组的方式给执行任务传参
# -kwargs:以宁典方式给执行任务传参
# -name:线程名,一般不用设置
# 启动线程,让线程开始工作
# thread_obj.start()
"""
演示多线程编程的使用
"""
# import time
#
#
# def sing():
# while True:
# print('我在唱歌,啦啦啦……')
# time.sleep(1)
#
#
# def dance():
# while True:
# print('我在跳舞,呱呱呱……')
# time.sleep(1)
#
#
# if __name__ == '__main__':
# sing()
# dance()
# 单线程只唱歌
"""
我在唱歌,啦啦啦……
我在唱歌,啦啦啦……
我在唱歌,啦啦啦……
……
"""
# import time
# import threading
#
#
# def sing():
# while True:
# print('我在唱歌,啦啦啦……')
# time.sleep(1)
#
#
# def dance():
# while True:
# print('我在跳舞,呱呱呱……')
# time.sleep(1)
#
#
# if __name__ == '__main__':
# # 创建一个唱歌的线程
# 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_thread = threading.Thread(target=sing, args=('我要唱歌,哈哈哈',)) # 带上逗号变成元组
# 创建一个跳舞的线程
dance_thread = threading.Thread(target=dance, kwargs={'msg': '我在跳舞,啦啦啦'})
# 让线程去干活吧
sing_thread.start()
dance_thread.start()
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 3415226167@qq.com