Python在线程和EventLoop之间共享锁

时间:2020-01-28 13:46:07

标签: python multithreading locking python-asyncio

考虑一下我有一个主线程同时运行一个(或多个异步eventloop)和多个python线程的情况。

我想拥有一个锁,该锁在线程和事件循环中均有效。 例如,当在异步EventLoop中获取锁时,其他异步循环和线程将等待完全相同的锁。

我应该如何实现呢?

我了解threading.Lockasyncio.Lock。但是我不确定是否可以在异步任务中使用threading.Lock,反之亦然。

1 个答案:

答案 0 :(得分:0)

我想到的想法是创建一个新的Lock或Queue类,每种处理类型都有两个对象。

但是有些人已经实现了这个想法,甚至更多。例如:

相关问题