Python中的猴子补丁

Posted liangying666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的猴子补丁相关的知识,希望对你有一定的参考价值。

monkey patch指的是在运行时动态替换,一般是在startup的时候.
用过gevent就会知道,会在最开头的地方gevent.monkey.patch_all();把标准库中的thread/socket等给替换掉.这样我们在后面使用socket的时候可以跟平常一样使用,无需修改任何代码,但是它变成非阻塞的了.
之前做的一个游戏服务器,很多地方用的import json,后来发现ujson比自带json快了N倍,于是问题来了,难道几十个文件要一个个把import json改成import ujson as json吗?
其实只需要在进程startup的地方monkey patch就行了.是影响整个进程空间的.

同一进程空间中一个module只会被运行一次.

 

技术分享图片

 




以上是关于Python中的猴子补丁的主要内容,如果未能解决你的问题,请参考以下文章

python笔记69 - 什么是猴子补丁(Monkey Patch)?

python的猴子补丁monkey patch

Python面试题之“猴子补丁”(monkey patching)指的是什么?这种做法好吗?

Python之猴子补丁

猴子补丁(monkey patch)

猴子补丁 Python 类