Skip to content

Commit 03b524d

Browse files
committed
Take _state_manager_lock when closing
Avoid interference with _schedule_process_write_queue
1 parent acc8225 commit 03b524d

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

reflex/istate/manager/disk.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -348,8 +348,9 @@ async def modify_state(self, token: str) -> AsyncIterator[BaseState]:
348348

349349
async def close(self):
350350
"""Close the state manager, flushing any pending writes to disk."""
351-
if self._write_queue_task:
352-
self._write_queue_task.cancel()
353-
with contextlib.suppress(asyncio.CancelledError):
354-
await self._write_queue_task
355-
self._write_queue_task = None
351+
async with self._state_manager_lock:
352+
if self._write_queue_task:
353+
self._write_queue_task.cancel()
354+
with contextlib.suppress(asyncio.CancelledError):
355+
await self._write_queue_task
356+
self._write_queue_task = None

0 commit comments

Comments
 (0)