Hi, I don't know if there is a third party solution for this.
I think the closest you can get today using the standard library is using a multiprocessing.manager().Lock (which can be shared among processes) and call the lock.acquire() function with asyncio.run_in_executor(), using a ThreadedPoolExecutor to avoid blocking the asyncio event loop. Best regards, Roberto El mar., 17 abr. 2018 a las 0:05, Ludovic Gasc (<gml...@gmail.com>) escribió: > Hi, > > I'm looking for a equivalent of asyncio.Lock ( > https://docs.python.org/3/library/asyncio-sync.html#asyncio.Lock) but > shared between several processes on the same server, because I'm migrating > a daemon from mono-worker to multi-worker pattern. > > For now, the closest solution in term of API seems aioredlock: > https://github.com/joanvila/aioredlock#aioredlock > But I'm not a big fan to use polling nor with a timeout because the lock I > need is very critical, I prefer to block the code than unlock with timeout. > > Do I miss a new awesome library or do you have an easier approach ? > > Thanks for your responses. > -- > Ludovic Gasc (GMLudo) >
_______________________________________________ Async-sig mailing list Async-sig@python.org https://mail.python.org/mailman/listinfo/async-sig Code of Conduct: https://www.python.org/psf/codeofconduct/