Gevent官网文档地址:http://www.gevent.org/contents.html 进程、线程、协程区分 我们通常所说的协程Coroutine其实是corporate routine的缩写,直接翻译为协同的例程,一般我们都简称为协程。 在linux系统中,线程就是轻量级的进程,而我们通 ...
分类:
其他好文 时间:
2019-11-20 23:31:04
阅读次数:
91
清华大学下载镜像源 https://pypi.tuna.tsinghua.edu.cn/simple 可以在使用pip的时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple ,这样就会从清华这边的镜像去安装gevent库。 例如:pip install - ...
分类:
其他好文 时间:
2019-11-16 00:17:40
阅读次数:
10355
Anaconda更换清华源 pip更换清华源 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gevent ...
分类:
其他好文 时间:
2019-11-01 22:20:23
阅读次数:
108
Libev库学习 https://www.cnblogs.com/wunaozai/p/3950249.html Libev库学习(1)https://www.cnblogs.com/wunaozai/p/3954131.html Libev库学习(2)https://www.cnblogs.com ...
分类:
其他好文 时间:
2019-11-01 16:09:17
阅读次数:
84
import geventfrom gevent import monkeyimport timeimport random# 有耗时操作时需要monkey.patch_all() # 将程序中用到的耗时操作代码,换为 gevent 中自己实现的模块def work(name): for i in ...
分类:
编程语言 时间:
2019-11-01 11:15:07
阅读次数:
91
libev与libuv的区别 https://www.cnblogs.com/charlesblc/p/6341280.html 参考: http://blog.csdn.net/w616589292/article/details/46475555 libuv 和 libev ,两个名字相当相近的 ...
分类:
其他好文 时间:
2019-10-24 10:13:21
阅读次数:
69
我们都知道使用gevent协程时,经常会看见在导入包的时候看见这样的代码 from gevent import monkey; monkey.patch_all() monkey.patch_all()作用呢,就是将阻塞的改成非阻塞 具体有哪些呢。 Example: 执行发现报错了。loop_exi ...
分类:
其他好文 时间:
2019-10-23 11:39:02
阅读次数:
99
我们的游戏后端一直以来用的都是libev,之前尝试过去读源码,因为里面用了大量宏和自己也不够耐心的原因,一直没有看懂。这次终于痛下决心,一定要啃下它,于是在这个星期调整自己的工作学习方式(在读源码的过程也发现平时一些不利于学习的习惯),结合别人的文章与源码,终于看懂了它的脉络,然后解答了一些困惑我已 ...
分类:
其他好文 时间:
2019-10-20 01:15:01
阅读次数:
115
一 gevent模块 Gevent 是一个第三方库,可以轻松通过gevent实现并发同步或异步编程,在gevent中用到的主要模式是 Greenlet , 它是以C扩展模块形式接入Python的轻量级协程。 Greenlet全部运行在主程序操作系统进程的内部,但它们被协作式地调度。 遇到IO阻塞时会 ...
分类:
其他好文 时间:
2019-10-13 11:27:43
阅读次数:
91
开发过程中使用SELECT * FROM Win32_Printer 查看设备有一个备份打印机, 并且被设置为默认打印机了, 但是设备管理器中没有 解决方法: 使用系统自带的测试WMI (Windows管理规范) 语句工具进行调试: 1. 开始→运行→输入:wbemtest 回车2. 单击"连接", ...
分类:
其他好文 时间:
2019-10-12 20:36:03
阅读次数:
116