摘要:1. 进程是资源分配的单位 2. 线程是操作系统调度的单位 3. 进程切换需要的资源很最大,效率很低 4. 线程切换需要的资源一般,效率一般(当然了在不考虑GIL的情况下) 5. 协程切换任务资源很小,效率高 6. 多进程、多线程根据cpu核数不一样可能是并行的,但是协程是在一个线程中 所以是并发
阅读全文
摘要:迭代器: 一个实现了__iter__方法和__next__方法的对象,就是迭代器。 生成器: 生成器是一类特殊的迭代器 简单来说:只要在def中有yield关键字的 就称为 生成器 yield关键字有两点作用: * 保存当前运行状态(断点),然后暂停执行,即将生成器(函数)挂起 * 将yield关键
阅读全文
摘要:多任务:操作系统同时运行多个任务 线程:一个程序运行起来之后一定有一个执行代码的东西,该东西即为线程 线程是操作系统调度执行的最小单位 * 并发:指的是任务数多余cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的速度相当快,看上去一起执
阅读全文
摘要:进程的状态: * 就绪态:运行的条件都已经慢去,正在等在cpu执行 * 执行态:cpu正在执行其功能 * 等待态:等待某些条件满足,例如一个程序sleep了,此时就处于等待态 进程创建: import multiprocessing t =multiprocessing.Thread(target
阅读全文