]> granicus.if.org Git - python/commitdiff
Closes #21921: Fix ResourceWarning in the asyncio examples: close the event
authorVictor Stinner <victor.stinner@gmail.com>
Sat, 5 Jul 2014 13:38:59 +0000 (15:38 +0200)
committerVictor Stinner <victor.stinner@gmail.com>
Sat, 5 Jul 2014 13:38:59 +0000 (15:38 +0200)
loop at exit. Patch written by Vajrasky Kok (I modified also the "hello world"
example using a coroutine).

Doc/library/asyncio-eventloop.rst
Doc/library/asyncio-task.rst

index c242fc3dc1b3f452cad8d775f18178f5fd6f8897..268fa41fb00b9e2e9bd1edeea4f803990e40464b 100644 (file)
@@ -651,7 +651,10 @@ Print ``Hello World`` every two seconds, using a callback::
 
     loop = asyncio.get_event_loop()
     loop.call_soon(print_and_repeat, loop)
-    loop.run_forever()
+    try:
+        loop.run_forever()
+    finally:
+        loop.close()
 
 .. seealso::
 
@@ -679,5 +682,8 @@ Register handlers for signals :py:data:`SIGINT` and :py:data:`SIGTERM`::
 
     print("Event loop running forever, press CTRL+c to interrupt.")
     print("pid %s: send SIGINT or SIGTERM to exit." % os.getpid())
-    loop.run_forever()
+    try:
+        loop.run_forever()
+    finally:
+        loop.close()
 
index f1894daf31ea470ff04e3f6ecd670d0678fcf6e3..35446577cfa3a1a254fdcba6e21a490196087353 100644 (file)
@@ -89,7 +89,10 @@ Print ``"Hello World"`` every two seconds using a coroutine::
             yield from asyncio.sleep(2)
 
     loop = asyncio.get_event_loop()
-    loop.run_until_complete(greet_every_two_seconds())
+    try:
+        loop.run_until_complete(greet_every_two_seconds())
+    finally:
+        loop.close()
 
 .. seealso::