On 02/12/2014 02:02 PM, yury.selivanov wrote:
http://hg.python.org/cpython/rev/920304e1f36b
changeset:   89175:920304e1f36b
user:        Yury Selivanov <yseliva...@sprymix.com>
date:        Wed Feb 12 17:01:52 2014 -0500
summary:
   asyncio.events: Use __slots__ in Handle and TimerHandle

files:
   Lib/asyncio/events.py |  4 ++++
   1 files changed, 4 insertions(+), 0 deletions(-)


diff --git a/Lib/asyncio/events.py b/Lib/asyncio/events.py
--- a/Lib/asyncio/events.py
+++ b/Lib/asyncio/events.py
@@ -19,6 +19,8 @@
  class Handle:
      """Object returned by callback registration methods."""

+    __slots__ = ['_callback', '_args', '_cancelled']
+
      def __init__(self, callback, args):
          assert not isinstance(callback, Handle), 'A Handle is not a callback'
          self._callback = callback
@@ -46,6 +48,8 @@
  class TimerHandle(Handle):
      """Object returned by timed callback registration methods."""

+    __slots__ = ['_when']
+
      def __init__(self, when, callback, args):
          assert when is not None
          super().__init__(callback, args)

Apologies up front if these are stupid questions, but:

Why __slots__?  Are we going to have so many of these things that memory is an 
issue?

The asserts in the code -- those are not for checking user input, correct?

--
~Ethan~
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to