什么是monkey patch(猴子补丁)

  • 所谓mokey patch就是运行时替换
  • 比如gevent库需要修改内置的socket
  • from gevent import monkey; mokey.patch_socket()     这样就把内置的阻塞的 socket替换成非阻塞的socket

看代码

import socket

print(socket.socket)


print("After monkey patch")
from gevent import monkey
monkey.patch_socket()
print(socket.socket())

import select
print(select.select)
monkey.patch_select()
print("After monkey patch")
print(select.select)


import time
print(time.time())

def _time():
    return 1234

time.time = _time
print(time.time())    # 这样就实现了运行替换,所谓的monkey patch

猜你喜欢

转载自www.cnblogs.com/dairuiquan/p/11444202.html