Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 函数/回调执行能否被外部调用中断?_Javascript_Node.js_Asynchronous_Callback - Fatal编程技术网

Javascript 函数/回调执行能否被外部调用中断?

Javascript 函数/回调执行能否被外部调用中断?,javascript,node.js,asynchronous,callback,Javascript,Node.js,Asynchronous,Callback,我在一个回调函数中,该函数执行一些非常重要的操作,在从外部引发任何其他调用之前结束回调是非常重要的,因此不会中断。问题是:我是否保证我的回调函数将在没有任何中断的情况下执行到底,或者由于节点的异步性质,回调可以被中断,以便可以解决外部调用,然后恢复?ECMAScript运行时是一个单线程执行环境。虽然操作可以在运行时主机的其他线程中进行,但当前运行的调用堆栈必须在启动其他操作之前终止。回调被放入事件队列(由主机管理),在那里它们等待调用堆栈空闲。发生这种情况时,将执行队列中的下一个回调。除非您在

我在一个回调函数中,该函数执行一些非常重要的操作,在从外部引发任何其他调用之前结束回调是非常重要的,因此不会中断。问题是:我是否保证我的回调函数将在没有任何中断的情况下执行到底,或者由于节点的异步性质,回调可以被中断,以便可以解决外部调用,然后恢复?

ECMAScript运行时是一个单线程执行环境。虽然操作可以在运行时主机的其他线程中进行,但当前运行的调用堆栈必须在启动其他操作之前终止。回调被放入事件队列(由主机管理),在那里它们等待调用堆栈空闲。发生这种情况时,将执行队列中的下一个回调。

除非您在页面退出之前退出页面,否则您的回调将触发。。。这就是你的意思吗?不,任何东西都不能中断当前正在运行的代码或在它们之间运行的代码(除了终止进程)。但是请注意,如果您的。。。。超级重要的代码可以异步执行任何操作,在上述回调之间很可能(也很可能)会发生其他事情,但之后应该继续执行。@KevinB谢谢,这就是我要找的。@MartHaarman什么页面,我不知道你在说什么。javascript有内存锁吗?内存锁对异步单线程或javascript有意义吗?