getting-started-with-javascript icon indicating copy to clipboard operation
getting-started-with-javascript copied to clipboard

异步函数的执行顺序问题

Open cloudyview opened this issue 7 years ago • 1 comments

我在程序中先后调用了三个函数,都是异步函数,但是在具体执行的时候,却会从第二个开始执行,然后第一个,然后第三个。我之后将第一个函数改为同步函数后,执行顺序才正常。 是什么因素导致了这个现象呢? 难道函数本身也有优先级之分吗?是不是fs.readfile的登记低于fs.readDir? 使用异步函数的js程序

我做了一个测试,也是会优先执行readDir的。

cloudyview avatar Sep 03 '17 07:09 cloudyview

是因为你要读取的内容大小决定的。为什么要用异步,因为操作耗时。为什么会耗时,因为要读取系统文件就是耗时操作。哪个先执行,取决于文件大小还有一些其他因素。

xugy0926 avatar Sep 03 '17 16:09 xugy0926