Eventlet和锁定

问题描述:

由于Eventlet使用绿色线程和异步I/O,在访问对象之前是否还需要设置锁定?我的理解是,greenlet是一个线程的一部分,锁定不是必需的。任何人都可以确认或否认这一点?Eventlet和锁定

你的理解是正确的:“绿色”线程实际上并不是线程,它们不会在不可预知的点(尤其是不在操作的“中间”)被抢占,所以你完全可以控制何时执行从一个开始(并且因此可以被分派到另一个)并且可以节省锁获取/释放操作的麻烦/开销。