是在异步I / O进程开始后立即以某种“陈旧”状态将回调插入到回调队列中,还是仅在异步I / O完成后才排队?
换句话说,如果节点服务器运行以下
哪个回调将首先运行?来自I / O#1的回调,还是来自I / O#2的回调?
经过编辑,可以在方案中添加数字顺序。
答案 0 :(得分:0)
据我所知,它仅在异步进程返回数据后才运行。可以将回调看作是一个单独的函数,该函数可以传递并仅在一段代码的末尾使用。
这是大多数nodeJS开发人员必须处理的问题;为异步事件循环添加一些顺序。
这些回调将运行的顺序完全取决于所调用的每个方法的处理时间。
例如,如果回调#1的方法需要2.5毫秒才能完成,而回调#2的方法只需1毫秒。那么如果您一个接一个地运行这两个方法,则Callback#2将始终首先返回。