【太多事情要做了,这部分难度对我来说又很大,先写一下大体框架,到时候具体函数逆向分析过程给写出来】 问题: 1. 被调试器如何表明是否处理了异常? 2. 异常处理器是什么? 3. 如果异常到最后都没有被处理,那应该怎么办? 1. 调试器是否处理异常的标志 调试器使用 WaitForDebugEven ...
分类:
其他好文 时间:
2019-11-30 19:20:39
阅读次数:
109
socket服务端开发之测试使用threading和gevent框架 话题是测试下多线程和gevent在socket服务端的小包表现能力,测试的方法不太严谨,也没有用event loop + pool池的概念。不管是gevent和threading有pool的情况下,确实很省资源,但是固定的pool ...
分类:
其他好文 时间:
2019-11-27 23:23:41
阅读次数:
93
[TOC] Gevent gevent基础之阻塞,非阻塞 1.gevent中一个很大的改进就是将阻塞IO改为非阻塞IO; 阻塞调用是指调用结果返回之前,当前线程会被挂起。函数只有在得到结果之后才会返回 非阻塞指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回 同步,异步概念 1.同步就是 ...
分类:
其他好文 时间:
2019-11-23 18:31:32
阅读次数:
114
目录 迭代器 生成器 协程-yield 协程-greenlet 协程-gevent 进程、线程、协程区别 一、迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 1.可迭代对象 我们已经 ...
分类:
其他好文 时间:
2019-11-21 23:08:59
阅读次数:
96
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
import geventfrom gevent import monkeyimport timeimport random# 有耗时操作时需要monkey.patch_all() # 将程序中用到的耗时操作代码,换为 gevent 中自己实现的模块def work(name): for i in ...
分类:
编程语言 时间:
2019-11-01 11:15:07
阅读次数:
91
我们都知道使用gevent协程时,经常会看见在导入包的时候看见这样的代码 from gevent import monkey; monkey.patch_all() monkey.patch_all()作用呢,就是将阻塞的改成非阻塞 具体有哪些呢。 Example: 执行发现报错了。loop_exi ...
分类:
其他好文 时间:
2019-10-23 11:39:02
阅读次数:
99
一 gevent模块 Gevent 是一个第三方库,可以轻松通过gevent实现并发同步或异步编程,在gevent中用到的主要模式是 Greenlet , 它是以C扩展模块形式接入Python的轻量级协程。 Greenlet全部运行在主程序操作系统进程的内部,但它们被协作式地调度。 遇到IO阻塞时会 ...
分类:
其他好文 时间:
2019-10-13 11:27:43
阅读次数:
91