Python with上下文管理 contextmanager try except异常处理 else使用 ...
分类:
编程语言 时间:
2017-08-26 20:46:31
阅读次数:
215
好久没更新了,今天想想哪些要记录下的,装饰器什么的就不说了,很熟悉了,记录下。 1.monkey patch. 其实就是动态修改类,包括属性方法等的一种方式。 比如a = A() a.foo = foo之类的,但是怎么在运行前修改呢,类似gevent那样用自己的socket替换, gevent 源码 ...
分类:
编程语言 时间:
2017-08-04 12:42:42
阅读次数:
896
A MonkeyPatch is a piece of Python code which extends or modifies other code at runtime (typically at startup). A simple example looks like this: For ...
分类:
其他好文 时间:
2016-08-03 22:06:04
阅读次数:
227
转自https://ruby-china.org/topics/26120由于ruby的灵活性,如何很好的使用,其实是比较有技巧的,其实总结起来,可以大概归类如下常规业务,不到万不得已,不使用元编程,不使用晦涩的技巧来展示自己的牛逼慎用猴子补丁,否则会带来一些诡异的问题,和C++里面慎用运算符重载一...
分类:
其他好文 时间:
2015-07-16 09:40:15
阅读次数:
144
python 玩了这么长时间,也该写一些总结了,。。。。 好吧,把最喜欢的两个库先说了, gevent , request , 一个在协程方面实现最为精妙, 猴子补丁也不错, 另外一个在人性化方面达到极致。。。 元编程, 说白了...
分类:
编程语言 时间:
2014-12-06 00:19:19
阅读次数:
220
monkey patch指的是在运行时动态替换,一般是在startup的时候.
用过gevent就会知道,会在最开头的地方gevent.monkey.patch_all();把标准库中的thread/socket等给替换掉.这样我们在后面使用socket的时候可以跟平常一样使用,无需修改任何代码,但是它变成非阻塞的了.
之前做的一个游戏服务器,很多地方用的import json,后来发现ujs...
分类:
其他好文 时间:
2014-10-20 11:44:41
阅读次数:
224
monkey patch (猴子补丁) 用来在运行时动态修改已有的代码,而不需要修改原始代码。简单的monkey patch 实现:[python]#coding=utf-8def originalFunc(): print 'this is original function!'def modif...
分类:
编程语言 时间:
2014-06-24 22:50:22
阅读次数:
463