Skip to content

Commit 6daa0d2

Browse files
[redis] defer listener initialization (#128)
1 parent 4ff8fa6 commit 6daa0d2

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

broadcaster/_backends/redis.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,17 @@ def __init__(self, url: str):
1515
self._pubsub = self._conn.pubsub()
1616
self._ready = asyncio.Event()
1717
self._queue: asyncio.Queue[Event] = asyncio.Queue()
18-
self._listener = asyncio.create_task(self._pubsub_listener())
18+
self._listener: asyncio.Task[None] | None = None
1919

2020
async def connect(self) -> None:
21+
self._listener = asyncio.create_task(self._pubsub_listener())
2122
await self._pubsub.connect()
2223

2324
async def disconnect(self) -> None:
2425
await self._pubsub.aclose()
2526
await self._conn.aclose()
26-
self._listener.cancel()
27+
if self._listener is not None:
28+
self._listener.cancel()
2729

2830
async def subscribe(self, channel: str) -> None:
2931
self._ready.set()

0 commit comments

Comments
 (0)