关于事利用生成器实现一个并发的任务问题,以解析网页为例
来源:13-2 事件循环-2

WittChen
2020-03-19
老师您好,目前我看到了13-2小结,之前课程内容您好像并没有讲如何通过事件循环加生成器实现一个高并发的任务,我简单的设想了下,就像scrapy只要遇到一个需要请求网页的任务就把它yield出去交给下载器下载,我自己写的代码有个问题也就是我sleep住后,老师您也讲过这个问题,这个问题会阻塞之后所有的程序,需要逐个解析,而实际上也是如此,我想问那网页请求也需要时间,这个问题该怎么解决,而后面的async,它是如何实现高并发的,其中的asynio.sleep内部的原理和我们的time.sleep有何不同,还有事件循环老师说也不用我们自己写了,可是我想了解它是如何实现的,因为后面的章节还没有看,不知道老师讲解了没有,所以先提前提问了
写回答
1回答
-
asynio.sleep课程中讲解过。asyncio是不会阻塞主线程的, time.sleep是阻塞主线程,后面关于这些有详细的讲解
012020-03-20