From bc31ba4ae02d1d31c7ecab24148d6479bd2a1d6e Mon Sep 17 00:00:00 2001 From: Liran Nuna Date: Tue, 31 Oct 2017 01:09:37 -0700 Subject: [PATCH] Optimize asyncio.Future _schedule_callbacks --- Lib/asyncio/futures.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Lib/asyncio/futures.py b/Lib/asyncio/futures.py index 215f72d1910ecf..abc05476c0c7d8 100644 --- a/Lib/asyncio/futures.py +++ b/Lib/asyncio/futures.py @@ -120,14 +120,14 @@ def _schedule_callbacks(self): The callbacks are scheduled to be called as soon as possible. Also clears the callback list. """ - callbacks = self._callbacks[:] - if not callbacks: + if not self._callbacks: return - self._callbacks[:] = [] - for callback in callbacks: + for callback in self._callbacks: self._loop.call_soon(callback, self) + self._callbacks.clear() + def cancelled(self): """Return True if the future was cancelled.""" return self._state == _CANCELLED