Browse Source

Document how Client.run should be the last function to call.

pull/77/merge
Rapptz 9 years ago
parent
commit
6d5175ad9a
  1. 7
      discord/client.py
  2. 7
      docs/migrating.rst

7
discord/client.py

@ -759,7 +759,14 @@ class Client:
# cancel all tasks lingering
finally:
loop.close()
Warning
--------
This function must be the last function to call due to the fact that it
is blocking. That means that registration of events or anything being
called after this function call will not execute until it returns.
"""
try:
self.loop.run_until_complete(self.start(email, password))
except KeyboardInterrupt:

7
docs/migrating.rst

@ -262,6 +262,13 @@ After:
client.run('email', 'password')
.. warning::
Like in the older ``Client.run`` function, the newer one must be the one of
the last functions to call. This is because the function is **blocking**. Registering
events or doing anything after :meth:`Client.run` will not execute until the function
returns.
This is a utility function that abstracts the event loop for you. There's no need for
the run call to be blocking and out of your control. Indeed, if you want control of the
event loop then doing so is quite straightforward:

Loading…
Cancel
Save