1、线程池是如何使用的?具体步骤有哪些?
步骤1、导入功能Pool:1
multi-processorimportpool.
步骤2、会在线程池中建立一个入口:
pool≠Pool(启动线程池个数)
步骤3、导入相应请求函数和url链接:1
pool.map(相应请求函数、url链接)
步骤4、关闭线程池:
pool.close()
步骤5、子程序继续执行:
pool.join()
2、协程是如何运行的?协程如何登记及操作?
步骤1、导入函数:
importasyncioasync
步骤2、得到响应数据:1
c=requests("www.baidu.c_m").text
步骤3、循环对象的实例化:1
loop=asyncio.get_event_loop()
步骤4、对响应对象进行登记和操作:1
loop.run_until_complete(c)
3、task任务与future任务有哪些不同?
task的任务操作过程:1
步骤1、实例化循环对象:
loop=asyncio.get_event_loop()
步骤2、建立一个task任务:
task=loop.create_task(c)
步骤3、操作task任务:1
loop.run_until_complete(task)
future任务的操作过程:
步骤1、实例化循环对象:
loop=asyncio.get_event_loop()
步骤2、建立future工作:
task=asyncio.ensure_future(c)
步骤3、操作task任务:1
loop.run_until_complete(task)
4、何时需吊死?在运行任务时,aiohTTp可以自动完成
运行任务时,遇到堵塞时,要通过await人工挂机,异步操作时,不能有相似的同步进程,所以要使用aiohttp代替requests来请求操作