异步样例
异步打印不同的"Hello World"
import random
import asyncio
async def print_async(message):
# Randomizing the delay to prove it's actually
# async. To always run your code as fast as
# possible, sleep for 0 seconds.
await asyncio.sleep(random.random())
print(message)
def say_hello():
"""
Say hello in many languages
asynchronously.
"""
messages = [
"Hello world",
"Hola Mundo",
"Hallo Wereld",
"Bonjour le monde",
"Hallo Welt",
"Helo Byd",
"こんにちは世界",
"你好,世界",
"안녕 세상",
"Привет мир",
"שלום עולם",
]
# Open loop
loop = asyncio.get_event_loop()
tasks = [print_async(m) for m in messages]
loop.run_until_complete(asyncio.gather(*tasks))
print("Done saying hello.")
loop.close()
if __name__ == '__main__':
say_hello()