美文网首页
Python多任务_总结

Python多任务_总结

作者: Lutous | 来源:发表于2020-03-12 18:02 被阅读0次
迭代器、可迭代对象:
  • 我们把可以通过for...in...这类语句迭代读取一条数据供我们使用的对象称之为可迭代对象(Iterable)
  • 一个具备了__iter__方法的对象,就是一个可迭代对象
  • 一个实现了__ite__r方法和__next__方法的对象,就是迭代器
  • list、tuple等都是可迭代对象,我们可以通过iter()函数获取这些可迭代对象的迭代器。然后我们可以对获取到的迭代器不断使用next()函数来获取下一条数据
生成器
  • 只要在def中有yield关键字的 就称为生成器
  • 使用了yield关键字的函数不再是函数,而是生成器。(使用了yield的函数就是生成器)
  • yield关键字有两点作用:
    • 保存当前运行状态(断点),然后暂停执行,即将生成器(函数)挂起
    • 将yield关键字后面表达式的值作为返回值返回,此时可以理解为起到了return的作用
  • 可以使用next()函数让生成器从断点处继续执行,即唤醒生成器(函数)
进程、线程、协程区别
  • 进程是资源分配的单位
  • 线程是操作系统调度的单位
  • 进程切换需要的资源很最大,效率很低
  • 线程切换需要的资源一般,效率一般(当然了在不考虑GIL的情况下)
  • 协程切换任务资源很小,效率高
  • 多进程、多线程根据cpu核数不一样可能是并行的,但是协程是在一个线程中 所以是并发

相关文章

  • Python多任务总结

    多任务什么是多任务同时做多件事件(做个多个任务),运行多个方法多任务的原理并发:假的多任务,时间片的轮转,快速的交...

  • Python多任务_总结

    迭代器、可迭代对象: 我们把可以通过for...in...这类语句迭代读取一条数据供我们使用的对象称之为可迭代对象...

  • GIL

    Python的GIL是什么鬼 学习编程的时候,我们少会涉及到多任务。可是在python中使用多任务经常会提...

  • Python多线程多进程

    Python多线程多进程 QUICK START 1.[endif]进程和线程 1.1系统多任务机制 多任务操作的...

  • Python3简单实现多任务(线程/协程篇)

    写在前面 上一篇文章[Python3简单实现多任务(多进程篇)]已经介绍了python多进程实现多任务的简单实现方...

  • python——多任务

    linux才是真正的多用户多任务多任务,一般是通过时间片轮转和优先级调度等实现并发 进程 正在运行着的代码 线程 ...

  • Python - 多任务

    一、进程 1、multiprocessing.Process创建进程 2、使用Pool进程池创建进程 3、进程间的...

  • day24系统编程

    1python系统编程 1.1进程 1.1.1多任务的引入 单任务: 多任务: 说明: ·程序执行到os.fork...

  • 多任务-总结

    1.线程 from threading import Thread t = Thread(target=work1...

  • 2018-11-22进程,线程,协程

    进程:代码+资源,可以实现多任务线程:运行在进程中的最小单元,消耗资源小于进程 可以实现多任务协程:Python独...

网友评论

      本文标题:Python多任务_总结

      本文链接:https://www.haomeiwen.com/subject/uspvjhtx.html