1. 首页
  2. 编程语言
  3. Javascript
  4. 轻松创建nodejs服务器(7):阻塞操作的实现

轻松创建nodejs服务器(7):阻塞操作的实现

上传者: 2021-07-11 16:36:14上传 PDF文件 50.06 KB 热度 9次

requestHandlers.js请求/start的时候,延迟了10秒才打印。请求/upload的时候,并不会受影响。接下来做一个试验:在第一个浏览器窗口的地址栏中输入 http://localhost:8888/start,但是先不要打开它!我们在第一个窗口中按下回车,然后快速切换到第二个窗口中按下回车。注意,发生了什么:/start URL 加载花了 10 秒,这和我们预期的一样。可以它在对应的请求处理程序中并没有类似于 sleep()这样的操作啊,这是什么问题?Node.js 是单线程的,它可以在不新增额外线程的情况下对任务进行并行处理。它通过事件轮询来实现并行操作,我们应该要充分利用这一点 ―― 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。下一节我们将介绍一下如何实现非阻塞操作。

用户评论