异步是计算机多线程的异步处理。与同步处理相对,异步处理不用阻塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程。
node是异步的,异步是计算机多线程的异步处理,Node的单线程指的是JavaScript的执行是单线程的,但Javascript的宿主环境,无论是Node还是浏览器都是多线程的,node通过主线程调度线程池来实现异步。
Node的优点
Node作为一个新兴的前端框架,后台语言,有很多吸引人的地方:
RESTful API
单线程
Node可以在不新增额外线程的情况下,依然可以对任务进行并发处理 —— Node.js是单线程的。它通过事件循环(event loop)来实现并发操作,对此,我们应该要充分利用这一点 —— 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。
非阻塞IO
V8虚拟机
事件驱动
非阻塞 I/O,也叫异步 I/O,显然对应的就是阻塞式 I/O。
传统的服务器语言大多是多线程、阻塞式 I/O。这也是 Node 与众不同的地方,对于传统的服务器语言,在与用户建立连接时,每一个连接都是一个线程。 当有十万个用户连接时,服务器上就会有十万个线程。
而阻塞式 I/O 是指,当一个线程在执行 I/O 操作时,这个线程会阻塞,等待 I/O 操作完成后继续执行。
以上就是node是异步吗?的详细内容,更多请关注易知道|edz.cc其它相关文章!