异步
异步函数会在它执行完成之前返回,且在触发下一个动作之前会产生一些在后台完成的工作:
- 回调参数
- 返回一个占位符
- 传送给一个队列
- 回调注册表
阻塞
阻塞是指函数等待某事件的完成。可能导致一个函数阻塞的原因有非常多,如:
- 网络I/O
- 磁盘I/O
- 互斥锁
事实上,任何一个函数都或多或少是阻塞的(即使是在使用CPU的条件下,一个极端的例子是CPU在做密码的哈希函数计算如bcrypt,需要消耗几百毫秒的时间,这已远超网络或磁盘I/O的请求时间了.)
异步函数会在它执行完成之前返回,且在触发下一个动作之前会产生一些在后台完成的工作:
阻塞是指函数等待某事件的完成。可能导致一个函数阻塞的原因有非常多,如:
事实上,任何一个函数都或多或少是阻塞的(即使是在使用CPU的条件下,一个极端的例子是CPU在做密码的哈希函数计算如bcrypt,需要消耗几百毫秒的时间,这已远超网络或磁盘I/O的请求时间了.)