[TOC] python协程入门 函数的执行顺序 在了解协程之前, 我们需要再次回想一下python中的多个函数执行的顺序是怎样的? 我们看看下面一段代码,在没有在解释器运行之前,你是否知道函数的最后输出的内容呢 函数从C1开始,在执行过程中,遇到函数B1此时函数就跳转到函数B1去执行,在跳转到B1 ...
分类:
编程语言 时间:
2019-03-03 19:03:15
阅读次数:
259
使用channel同步 package main import ( "fmt" ) func printNumber(num int, c chan struct{}) { fmt.Println(num) c ...
分类:
其他好文 时间:
2019-03-03 16:12:15
阅读次数:
164
从生成器到协程 协程是指一个过程,这个过程与调用方协作,产出由调用方提供的值。生成器的调用方可以使用 .send(...)方法发送数据,发送的数据会成为yield表达式的值。因此,生成器可以作为协程使用。 从句法上看,生成器与协程都是包含yield关键字的函数。但是,在协程中,yield通常出现在表 ...
分类:
编程语言 时间:
2019-03-03 09:39:13
阅读次数:
184
https://www.cnblogs.com/cwp-bg/p/8780204.html python常见的web部署搭配nginx+gunicorn,下面记录一下gunicorn的配置使用。 安装gunicorn pip install gunicorn gunicorn -h # 查看使用的命 ...
分类:
编程语言 时间:
2019-02-28 18:07:43
阅读次数:
202
进程: 感觉只是使用Process模块加以使用即可: ...
分类:
编程语言 时间:
2019-02-24 10:42:44
阅读次数:
209
channel 分为两种: 1. 无缓冲 channel 2. 缓冲 channel 无缓冲 channel 的使用必须遵循一个原则:推送和读取必须同时存在,否则就发生死锁 先上代码: 这里定义了一个 int 型的信道 c1,然后通过辅助协程并行给 c1 推送 v(就是 i)然后又在主协程读取。 输 ...
分类:
其他好文 时间:
2019-02-20 14:43:59
阅读次数:
195
协程: 协程:是单线程下的并发,又称微线程,纤程。英文名Coroutine。协程是一种用户态的轻量级线程,即协程是由用户程序自己控制调度的。 需要强调的是: 对比操作系统控制线程的切换,用户在单线程内控制协程的切换 优点如下: 缺点如下: 总结协程特点: Greenlet模块 如果我们在单个线程内有 ...
分类:
其他好文 时间:
2019-02-20 11:17:08
阅读次数:
166
今天在使用正则表达式时未能解决实际问题,于是使用bs4库完成匹配,通过反复测试,最终解决了实际的问题,加深了对bs4.BeautifulSoup模块的理解。 爬取流程 前奏: 分析糗事百科热图板块的网址,因为要进行翻页爬取内容,所以分析不同页码的网址信息是必要的 具体步骤: 1,获取网页内容(url ...
分类:
编程语言 时间:
2019-02-19 00:54:13
阅读次数:
181
协程,又称微线程,即为轻量级的线程。python中实现协程是基于Gevent模块,Gevent模块内部封装了greenlet模块;greenlet模块实现了在单线程中切换状态,Gevent模块在此之上还实现了遇到I/O操作自动切换,使程序运行更快;但是Gevent只在遇到自己认识的I/O操作时切换,所以需要使用Gevent包的一个模块:猴子补丁,使用了这个补丁,Gevent会直接修改在它之后导入的
分类:
编程语言 时间:
2019-02-18 14:32:17
阅读次数:
222
协程 概念 由用户自己控制一个任务遇到io阻塞了就切换另外一个任务去执行,以此来提升效率 单线程的并发。用户态的轻量级线程,是由用户自己控制调度的。 优点: 协程的切换开销更小,属于程序级别的切换,操作系统完全感知不到,因而更加轻量级 最大限度利用cpu 缺点: 本质是单线程下,无法利用多核, 协程 ...
分类:
其他好文 时间:
2019-02-17 22:21:59
阅读次数:
171