অ্যাসিনসিও সহ অনুরোধগুলি (বা অন্য কোনও ব্লক করা লাইব্রেরি) ব্যবহার করতে, আপনি অন্য থ্রেডে কোনও ক্রিয়াকলাপ চালাতে বেসএভেন্টলুপ.আরুন_ইন_এক্সিকিউটর ব্যবহার করতে পারেন এবং ফলাফলটি পেতে এটি থেকে ফলন করতে পারেন। উদাহরণ স্বরূপ:
import asyncio
import requests
@asyncio.coroutine
def main():
loop = asyncio.get_event_loop()
future1 = loop.run_in_executor(None, requests.get, 'http://www.google.com')
future2 = loop.run_in_executor(None, requests.get, 'http://www.google.co.uk')
response1 = yield from future1
response2 = yield from future2
print(response1.text)
print(response2.text)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
এটি উভয় প্রতিক্রিয়া সমান্তরালে পাবেন।
অজগর 3.5 দিয়ে আপনি নতুন await
/ async
সিনট্যাক্সটি ব্যবহার করতে পারেন :
import asyncio
import requests
async def main():
loop = asyncio.get_event_loop()
future1 = loop.run_in_executor(None, requests.get, 'http://www.google.com')
future2 = loop.run_in_executor(None, requests.get, 'http://www.google.co.uk')
response1 = await future1
response2 = await future2
print(response1.text)
print(response2.text)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
আরও জানতে PEP0492 দেখুন।
subprocess
নিজের কোডটি সমান্তরাল করতে ব্যবহার করতে পারেন ।