我在一个回调函数中执行一些非常重要的操作,并且在从外部调用任何其他调用之前结束回调非常重要,因此不会中断。问题是:我保证我的回调函数会在没有任何中断的情况下执行,或者由于节点的异步性质,可以中断回调,以便可以解析外部调用,并在之后恢复?
答案 0 :(得分:1)
ECMAScript运行时是一个单线程执行环境。虽然操作可以在运行时主机的其他线程中进行,但是当前运行的调用堆栈必须先终止,然后才能在其上启动其他操作。回调被置于事件队列(由主机管理)中,等待调用堆栈空闲。发生这种情况时,会执行队列中的下一个回调。