在 Python 中没有类似 Java 中使用的 synchronized 关键字来同步方法,因此在 Python 中要实现同步方法,通常我们是使用 threading.Lock() 来实现。在进入函数的地方获取锁,出函数的时候释放锁,这样实现代码看起好非常不好看。另外网上也有人给出了其它几种实现方式,但看起来都不美气。 今天我在做项目的时候突然想到是不是可以通过 functools 来实现通过注解来标注方法为同步方法。 首先要求自己的类中有一个锁对象并且在类初始化的时候初始化这个锁对象,比如: class MyWorker(object): def __init__(self):