用来在运行时动态修改已有的代码,而不需要修改原始代码
在用gevent时(可实现并发同步异步编程),会在最开头的地方gevent.monkey.patch_all();把标准库中的thread/socket等给替换掉.这样我们在后面使用socket的时候可以跟平常一样使用,无需修改任何代码,但是它变成非阻塞的了.
例子:用ujson改了json的方法
import json
import ujson
def monkey_patch_json():
json.name = ‘ujson’
json.dumps = ujson.dumps
json.loads = ujson.loads
monkey_patch_json()
print ‘main.py’,json.name
import sub