之前决定要把每天学习的内容记录下来,坚持了几天后发现做这事很浪费时间,于是渐渐的就落下了。
现在重新开始,并不是因为“可以帮助别人”这种高大上的理由(毕竟小白一个,如果很幸运刚好被需要,那确实是很值得的开心的事情),仅仅是因为害怕 习惯性放弃。做过的事情,有余力做完,且算得上是一件不错的事,不做下去始终是遗憾。
目录
1、多任务
好处:充分利用cpu资源,提高程序的执行效率
方式:并发 、 并行
并发:在意短时间内交替执行
并行:同时执行多个任务
实现多任务的方法:进程、线程
进程: 一个正在运行的程序或者软件 操作系统进行资源分配的基本单位。
(操作系统按按进程分配资源 有一个进程就会分配一份内存资源)
进程:并发、并行
线程: 程序进程中执行代码的分支。 线程工作需要 cpu 的调度。CPU调度的基本单位。
线程:一定是并发
关系: 一个程序运行后至少有一个进程,一个进程默认有一个线程。线程依附在进程里,没有进程就没有线程。
一个进程可以有多个线程。
1.1 进程的使用
1.1.1多进程实现多任务
# 多进程的使用
import multiprocessing
import time
def work_one():
for i in range(2):
print("执行任务一")
time.sleep(0.2)
def work_two():
print("执行任务二")
# 在主模块中创建进程
if __name__=="__main__":
# 1、创建进程对象 指定执行任务
# 格式:multiprocessing.Process(group=None[,target[,name[,args[,kwargs]]]])
# group 目前只能是 None
# target 指定要执行的任务
# name 给进程命名(默认是process_n)