In this case, if I understand it correctly, it's more related to a coroutine who doesn't call the send method. I'm not sure this is is related to a lock.
Can you try to move your break point there [1] and to trace the execution step by step if it's possible.
Anyway, I think my initial changes can help to improve things.
So, possibly the culprit is eventlet there.
Your execution seems stuck by eventlet [1].
In this case, if I understand it correctly, it's more related to a coroutine who doesn't call the send method. I'm not sure this is is related to a lock.
Can you try to move your break point there [1] and to trace the execution step by step if it's possible.
Anyway, I think my initial changes can help to improve things.
[1] https:/ /github. com/eventlet/ eventlet/ blob/master/ eventlet/ event.py# L95