如何`python3 asyncio之 run_until_complete`为?

摘要:###前言 今天开始聊一聊python3的asyncio。关于asyncio,大家肯定都有自己的理解,并且网上大神也把基础概念也解释的比较透彻。 本文写作的初衷,主要是理解asyncio的原理并且实现一遍。 话不多说,我们开始! ###一、
前言 今天开始聊一聊python3的asyncio。关于asyncio,大家肯定都有自己的理解,并且网上大神也把基础概念也解释的比较透彻。 本文写作的初衷,主要是理解asyncio的原理并且实现一遍。 话不多说,我们开始! 一、知识准备 ● 理解进程、线程、协程。简单来说,这三个都是为了解决多任务同时进行的问题   1)进程是操作资源分配的最小单位,多任务的实现主要是极快地在进程间来回切换,而进程切换消耗时间最长(系统调用)   2)线程依赖于进程,多个线程共享了父进程的一部分资源,线程切换时间相对于进程来说消耗时间大大减少,但是由于python gil的存在,并不存在多线程(系统调用)   3)协程依赖于线程,由于进程/线程切换都是系统调用,开销是巨大的。而协程是在用户空间内完成任务切换,不会切换到操作系统资源(寄存器、信号量、堆栈等),所以这种方式开销最小。
阅读全文